php 中如何得到一个对象的类型
发布网友
发布时间:2022-04-27 00:49
我来回答
共2个回答
热心网友
时间:2022-04-06 01:47
得到一个对象的类型,使用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();
热心网友
时间:2022-04-06 03:05
带有自动补全代码功能的编辑器可以提供相关的信息。但是某些情况下无法由于编辑器无法确认对象类型(例如函数返回的对象可能是类型a或b的时候)就没有提示了,这个时候对于支持代码补全功能的编辑器来说可以用以下的两种方法使其能够产生提示。
($obj instanceof Mysql_DB); 这行之后再输入$obj就能看到提示了
/** @var $obj Mysql_DB **/; 通过这样的注释也可以起到相同的作用
如果你不知道当前对象是哪个类的实例可以测试一下,比如print_r($obj),echo get_class($obj)之类的。
php 中如何得到一个对象的类型
得到一个对象的类型,使用gettype()函数:<?phpecho gettype(1); // 输出integerecho gettype(array()); // 输出array 得到一个对象是哪个类的实例,使用get_class()函数:<?php$o = new stdClass();echo get_class(); // 输出stdClass 得到一个类或对象的方法和属性,要使用反射:<?phpcl...
php如何判断某变量的类型?
1、gettype()gettype 会根据 参数类型返回值 。例如:gettype('1');返回的是string。而gettype(1);返回的是integer。2、empty 如果 变量 是非空或非零的值,则 empty() 返回 FALSE。换句话说,”"、0、”0″、NULL、FALSE、array()、var $var、未定义;以及没有任何属性的对象都将被认为是空...
php中根据类名怎么动态获取已定义的类对象并动态调用某个方法?
在 PHP 中,可以通过类名来动态获取已定义的类对象,然后再调用类的方法。可以使用以下两个函数来实现:1. `class_exists()` 函数可以判断一个类是否已经定义。2. `call_user_func()` 函数可以动态调用一个方法。下面是示例代码:```// 判断类是否已定义 if (class_exists('ClassName')) { /...
PHP中如何定义对象类型数组
应该是存到对象属性中吧 你把 public function setDepartment($department){ this->department=$department;} 改成 public function setDepartment($department){ this->department[]=$department;} 即可 private $department;要不要改成 private $department=array();其实无所谓 ...
PHP中__get()方法详解
PHP中__get(),获得一个类的成员变量时调用 在 php 面向对象编程中,类的成员属性被设定为 private 后,如果我们试图在外面调用它则会出现“不能访问某个私有属性”的错误。那么为了解决这个问题,我们可以使用魔术方法 __get()。魔术方法__get()的作用 在程序运行过程中,通过它可以在对象的外部...
PHP中如何判断一个对象是否为空
很简单,比如有一个名叫data的对象,对象一旦被创建就不是空的,我们可以判断对象类是否有我们需要的数据来判断它是不是空,比如,我的data对象里有个变量name,如果没有这个name,我就认为它是空,if(isset($data->name)){ echo:"这不是空对象"}else{ echo:"一个空对象"} ...
关于PHP如何定义一个空对象
在PHP中,如果没有声明一个对象然后就对其属性赋值会出现警告提示,在此进行强制转换即可。PHP中创建一个空对象代码如下:声明空对象:$empty_object=(object)array();或者$empty_object=(object)null;把数组转换为对象:$arr=array(‘a’,’b’);$empty_object=(object)$arr;...
php中类的属性可以是对象吗?定义成对象后可以再给这个对象添加方法吗...
类的属性可以直接使用,没什么是不是对像。新手学习的OOP有点不可想像。你可记住此例子。<?php class Person { public $name = "NoName"; //定义public属性$name public $age = 20; //定义public属性$age } p = new Person(); //创建对象 echo " " . $p->name; //输出对象$p的属性...
php里面,什么叫对象内部?什么是对象外部?
上面大概就是它们的定义吧, 也许你是刚接触面象对象的朋友, 不要被概念的东西搞晕了,给你举个列子吧,如果你去中关村想买几台组装的PC机,到了那里你第一步要干什么,是不是装机的工程师和你坐在一起,按你提供的信息和你一起完成一个装机的配置单呀,这个配置单就可以想像成是类,它就是一...
能讲讲PHP面向对象的编程吗
对象的行为:可以对 对象施加那些操作,开灯,关灯就是行为。对象的形态:当施加那些方法是对象如何响应,颜色,尺寸,外型。对象的表示:对象的表示就相当于身份证,具体区分在相同的行为与状态下有什么不同。比如 Animal(动物) 是一个抽象类,我们可以具体到一只狗跟一只羊,而狗跟羊就是具体的对象,...