php获取类的方法
1. php中如何找到对象所属的类
PHP内置了相关的函数可以满足你的要求。详细解答如下:
echoget_class($obj);//
不过实战中很少使用这种方式,因为获得类名并没有实际意义,只是在特殊情况下无法跟踪代码时临时调试一下而已。
实战用常用的方式是
if($objinstanceofCat)//$obj是Cat类的实例吗?
if($objinstanceofAnimal)//$obj是Animal类的实例吗?
希望以上回答能帮助到你,有用望采纳,有疑问请追问。
2. 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();
3. php获取文件mime类型的几种方法
php获取文件mime类型有以下几种方法:
1、mime_content_type()函数判断获取mime类型
mime_content_type返回指定文件的MIME类型,
用法:
echomime_content_type('php.gif') ."\n";
echomime_content_type('test.php');
输出:
image/gif
text/plain
但是php 5.3.0已经将该函数废弃。如果仍想使用此函数,那么可以对php进行配置启用magic_mime扩展。
2、php Fileinfo 获取文件MIME类型(finfo_open)
PHP官方推荐mime_content_type()的替代函数是Fileinfo函数。PHP
5.3.0+已经默认支持Fileinfo函数(fileinfo
support-enabled),不必进行任何配置即可使用finfo_open()判断获取文件MIME类型。
用法:
$finfo = finfo_open(FILEINFO_MIME);
$mimetype = finfo_file($finfo, $filename);
finfo_close($finfo);
3、image_type_to_mime_type()获取图片MIME类型
如果需要判断MIME类型的文件只有图像文件,那么首先可以使用exif_imagetype()函数获取图像类型常量,再用image_type_to_mime_type()函数将图像类型常量转换成图片文件的MIME类型。
注意:需要在php.ini中配置打开php_mbstring.dll(Windows需要)和extension=php_exif.dll。
4、php上传文件获取MIME类型
如果使用php上传文件,检测上传文件的MIME类型,则可以使用全局变量$_FILES['uploadfile']['type'],由客户端的浏览器检测获取文件MIME类型。
4. php中怎么用ReflectionClass中的方法获取类信息
$class = new ReflectionClass('ClassName');
//获取ClassName类的属性
$class->getProperties()
//获取ClassName类的方法
$class->getMethods()
5. php中,获取类里面函数的变量,的方法是
调用类中的函数的变量,外面是无法直接调用的。
要调用的话:
1、设置返回值
2、直接在函数输出
前2点@xulinjie1214 已经回答了
3、全局变量
<?php
$a=0;
class ab
{
function niya()
{
global $a;
$a=50+1;
}
}
$pp=new ab;
$pp->niya();
echo $a;
?>
6. php获取、检查类名、函数名、方法名的函数方法
1.function_exists()
-
Return
TRUE
if
the
given
function
has
been
defined
2.is_callable()
-
检测参数是否为合法的可调用结构
3.class_exists()
-
检查类是否已定义
4.method_exists()
-
检查类的方法是否存在
__FUNCTION__
函数名称(PHP
4.3.0
新加)。自
PHP
5
起本常量返回该函数被定义时的名字(区分大小写)。在
PHP
4
中该值总是小写字母的。
__CLASS__
类的名称(PHP
4.3.0
新加)。自
PHP
5
起本常量返回该类被定义时的名字(区分大小写)。在
PHP
4
中该值总是小写字母的。
__METHOD__
类的方法名(PHP
5.0.0
新加)。返回该方法被定义时的名字(区分大小写)。
注:这些常量前后均是两个下划线。
get_class(class
name);//取得当前语句所在类的类名
get_class_methods(class
name);//取得class
name
类的所有的方法名,并且组成一个数组
get_class_vars(class
name);//取得class
name
类的所有的变亮名,并组成一个数组
7. PHP怎么获取很多Class文件里面所有Class的方法
实例化这个class,然后就可以调用class里面的所有方法了。
实例化的方法:
首先在需要调用的php文件里面用include引入这个class文件。
include'你的class文件';
然后进行实例化,比如class名为test。
$m=newtest();
实例化后可以调用class里面的任何方法,例如有个方法名为。
$m->();
这样就成功的完成了。
8. PHP怎么调用其他类的方法
在Java的调用方法是import,而在PHP中没有import这个函数,一般PHP中调用其他类是用到require(),具体PHP调用其他类的方法如下:
1、首先应该先有一个文件名为tool.php的文件,在文件中声明一个类。
(8)php获取类的方法扩展阅读:
类是变量与作用于这些变量的函数的集合。使用下面的语法定义一个类:
<?php
class Cart { var $items; // 购物车中的物品
// 将 $num 个 $artnr 物品加入购物车
function add_item($artnr, $num) {
$this->items[$artnr] += $num;
} // 将 $num 个 $artnr 物品从购物车中取出
function remove_item($artnr, $num) {
if ($this->items[$artnr] > $num) {
$this->items[$artnr] -= $num; return true;
} elseif
($this->items[$artnr] == $num) {
unset($this->items[$artnr]); return true;
} else {
return false; }
}
} ?>
上面的例子定义了一个 Cart 类,这个类由购物车中的商品构成的数组和两个用于从购物车中添加和删除商品的函数组成。
9. PHP中如何获得当前类的名称,而实例化后获取子类的名称
通过 get_declared_classes 获取所有的类,
然后循环这个array,再通过 instance_of 检测是否是你指定类的子类,然后push到一个数组中.
10. PHP-php怎样自动获取被调用的类名
(PHP 4, PHP 5)
get_class -- 返回对象的类名
说明
编辑
string get_class ( [object obj] )
返回对象实例 obj 所属类的名字。如果 obj 不是一个对象则返回 FALSE。
注: 在 PHP 扩展库中定义的类返回其原始定义的名字。在 PHP 4 中 get_class() 返回用户定义的类名的小写形式,但是在 PHP 5 中将返回类名定义时的名字,如同扩展库中的类名一样。
注: 自 PHP 5 起,如果在对象的方法中调用则 obj 为可选项。
<?php
classfoo{
functionfoo()
{
//implementssomelogic
}
functionname()
{
echo"Mynameis",get_class($this)," ";
}
}
//createanobject
$bar=newfoo();
//externalcall
echo"Itsnameis",get_class($bar)," ";
//internalcall
$bar->name();
?>
输出:
Its name is foo
My name is foo