php 中如何得到一个对象的类型

php中如何获得一个对象的类型?如何根据类型获得这个类有什么方法和属性呢?请给出样例代码。... php中如何获得一个对象的类型?如何根据类型获得这个类有什么方法和属性呢?请给出样例代码。 展开
 我来答
nbyh2012
推荐于2017-11-29 · TA获得超过3278个赞
知道小有建树答主
回答量:483
采纳率:100%
帮助的人:795万
展开全部

得到一个对象的类型,使用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();
百度网友a19d193
2013-08-28 · TA获得超过3446个赞
知道大有可为答主
回答量:1464
采纳率:100%
帮助的人:1429万
展开全部

带有自动补全代码功能的编辑器可以提供相关的信息。但是某些情况下无法由于编辑器无法确认对象类型(例如函数返回的对象可能是类型a或b的时候)就没有提示了,这个时候对于支持代码补全功能的编辑器来说可以用以下的两种方法使其能够产生提示。

  1. ($obj instanceof Mysql_DB); 这行之后再输入$obj就能看到提示了

  2. /** @var $obj Mysql_DB **/; 通过这样的注释也可以起到相同的作用


如果你不知道当前对象是哪个类的实例可以测试一下,比如print_r($obj),echo get_class($obj)之类的。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式