㈠ php中实例化对象&是什么意思
&是“引用”,也就是说$db=& new Creat()的$db不是具体一个对象,而是对象的引用。
一般这样的情况下,有可以Creat的构造函数是返回某一个全局或某个作用域下的对象。
㈡ php中的对象分为哪两种
得到一个对象的类型,使用gettype()函数:
<?php
echo gettype(1); // 输出integer
echo gettype(array()); // 输出array
得到一个对象是哪个类的实例,使用get_class()函数:
<?php
$o = new stdClass();
echo get_class(); // 输出stdClass
得到一个类或对象的方法和属性,要使用反射:
<?php
class MyClass {
public $var;
public function foo() {}
}
$ref = new ReflectionClass('MyClass');
$ref->getProperties(); // 会返回一组对象,用法参考PHP手册
$ref->getMethods(); // 会返回一组对象,用法参考PHP手册
$obj = new MyClass();
$ref = new ReflectionObject($obj);
$ref->getProperties();
$ref->getMethods();
㈢ php中怎样访问对象中名字叫0的成员
在别的地方看到了答案,贴到这里让更多同学们学习一下吧
$a = new \stdClass();
$a->{0} = "test";
var_mp($a); //object(stdClass)#1 (1) { ["0"]=> string(4) "test" }
echo $a->{0}; //test
㈣ php 类/对象函数
你要问什么?
㈤ php 中如何得到一个对象的类型
得到一个对象的类型,使用gettype()函数:
<?php
echogettype(1);//输出integer
echogettype(array());//输出array
得到一个对象是哪个类的实例,使用get_class()函数:
<?php
$o=newstdClass();
echoget_class();//输出stdClass
得到一个类或对象的方法和属性,要使用反射:
<?php
classMyClass{
public$var;
publicfunctionfoo(){}
}
$ref=newReflectionClass('MyClass');
$ref->getProperties();//会返回一组对象,用法参考PHP手册
$ref->getMethods();//会返回一组对象,用法参考PHP手册
$obj=newMyClass();
$ref=newReflectionObject($obj);
$ref->getProperties();
$ref->getMethods();
㈥ PHP数组里面存放对象
楼上解释正确,不过我补充一下。
既然初始化是在类声明之后,那么可以通过手动串行化和反串行化来达到目的。
保存的时候使用serialize来保存,提取恢复的时候使用unserialize来恢复。
当然,这个还有一个要注意的地方,需要保存的对象最好是只包含数据,意思是,不要有数据库连接资源、文件资源之类的,如果包含这些,串行和反串行的结果都是一个int 0,反串行的时候可能不能正常工作。
至于对象串行反串行的一些可定制的功能,可以参考帮助文档的这个部分:
http://dk2.php.net/manual/zh/language.oop.magic-functions.php
通过定义魔术函数__sleep __wakeup来实现。
㈦ php面向对象有什么用
因为功能太多了,把实现一种功能的一系列相关函数和数据封装成一个类,方便加载和使用。
例如gz压缩、MySQL、验证码等类库,需要用的时候才加载,一种对象就实现一种功能。
㈧ php对象怎样销毁啊
我记得看过一篇文章,有人做过测试,当一个变量的值的大小小于某个数值时(具体多大忘记了),使用unset销毁对象会降低性能。所以当对象大小较大时,建议用unset销毁,否则不推荐。
㈨ php输出对象里面的一个值
如果不使用反射只能输出对象的公共(public)属性值或方法返回值。
例如:
classMyClass
{
protected$link;
public$name;
publicfunctiongetLink()
{
return$this->link;
}
publicfunctionsetLink($link)
{
$this->link=$link;
}
}
$a=newMyClass();
$a->name='test';
$a->setLink('http://www..com');
echo$a->name;
echo'<br/>';
echo$a->getLink();
echo'<br/>';
㈩ php 对象取值,怎么弄!!!
比如数组名是$array
不明白你这个为什么要加入一个(hotspot%)
没有%号可以$array[7][Tables_in_ga_demo]来取,有的话想办法把他去掉从源程序中去掉不麻烦