PHP如何对SESSION序列化(SESSION对象处理)
這個問題有點奇怪,在Java和.net的世界裡還未碰到過.......
看來PHP對對象的支持還不是太友好,呵呵~~~
[轉載於:] http://blog.csdn.net/yehell/archive/2007/12/19/1953826.aspx
今天在php文件中设置了一个session.并将一个类的对象保存在这个session中。可是读取session得时候却出现了__PHP_Incomplete_Class问题。print_r()一下发现session中有这个对象的值,但是却不能将值取出。
在网上检索了一下,原因出在session对象得序列化问题上。各种各样的解决方法让人看了头晕,就是不好用。
解决方法:
$_SESSION["ORDER_SEARCH_CASE"] = serialize($searchcase);//赋值时把对象序列化一下
$searchcase = unserialize($_SESSION["ORDER_SEARCH_CASE"]);//取值的时候再反序列化一下
搞定了!!
至于原理还不太清楚:)有待研究
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
php:用序列化或session对象让oo进行到底
php:用序列化或session对象让oo进行到底
php支持面向对象编程,这使得我们在编程时可以尽可能使用类及对象来简化
我们的程序,减少代码维护的工作量.
可是由于变量到脚本执行完毕就释放,我们本页所生成的对象想在其它页面使用时
便碰到了麻烦.可是,在很多情况下,有些任务在一两个页面是无法完成的.如果能够
将对象及其方法传递到我们想使用对象的页面,那岂不是个很好的主意.
虽然用get 或post的hide方法传递对象变量然后在新页面建立一新的对象,再然后
用构造函数来初始化新对象,好像也行的通,可是......,很麻烦,想必大家能想像得到吧.
经过长时间的尝试,现总结两种方法来传递对象.
一种,序列化(php4才具有的功能),利用这个功能我们可以将对象序列化,然后在我们需要
的页面将对象变量反序列化来使用.
举例如下:
//*********class.php 定义类*********
<?
class a
{
var $a;
var $b;
var $c;
function a($x,$y)
{
$this->a=$x;
&n
相关文档:
在做邯郸房产网的时候遇到php获取checkbox的问题:asp获取表单中的复选框的值,直接就是以“,”(逗号)为分隔符的数组。php中确总是只获取最后一个复选框的值。
解决办法:
form表单的部分代码:
<input type="checkbox" name="frm_tag[]" id="frm_tag" value="1">1
<input type="checkbox" name=" ......
声明,我用的PHP框架是CI(codeignitor),但其实因为是用JS调用FCKeditor的,所以这个和框架没有关系
首先下载FCKeditor 2.6.3 (我使用的是这个版本)
可以在CSDN中下载
解压,将FCKeditor2.6.3下面的fckeditor整个文件夹复制到网站根目录(和index.php)同一个目录,并更名为fck(不改名也行,但后面设置根路径的时候 ......
最近我真是头大矣,我的博客里居然一夜间变成了php和asp的斗争场,甚至变成了windows和linux的斗争场。真是意想不到的。
我本来无意挑起windows和linux之间的争端,而且也非常不想去挑这种争端。
话说,其实我本身对linux操作系统是没有什么坏印象的,虽然自己的电脑上没有装过linux,但是在同学的电脑上用过,觉得它挺好 ......
在php中计算时间差有时候是件麻烦的事!不过只要你掌握了日期时间函数的用法那这些也就变的简单了:
一个简单的例子就是计算借书的天数,这需要php根据每天的日期进行计算,下面就来谈谈实现这种日期计算的几种方法:
(1) 如果有数据库就很容易了!若是MSSQL可以使用触发器!用专门计算日期差的函数datediff()便可 ......