本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
在php中,可以使用get_class_methods()函数来查询类里面有哪些方法。
get_class_methods()函数可以获取类的所有方法,返回由类的方法名组成的数组。
语法:
get_class_methods($class_name)
$class_name:类名或者对象实例。
返回值:返回由 $class_name 指定的类中定义的方法名所组成的数组。如果出错,则返回 null。
示例:
<?php
class myclass {
// constructor
function myclass()
{
return(true);
}
// method 1
function myfunc1()
{
return(true);
}
// method 2
function myfunc2()
{
return(true);
}
}
$class_methods = get_class_methods('myclass');
// or
$class_methods = get_class_methods(new myclass());
foreach ($class_methods as $method_name) {
echo "$method_name<br>";
}
?>
输出结果:
myclass
myfunc1
mufunc2
实例扩展:
<?php
class user
{
var $usertable;
function get_oneuser($field,$value)
{
$field_array=array("id","name"); //查询方式
if(in_array($field,$field_array))
{
$sql="SELECT * FROM `$this->usertable` WHERE $field='$value'";
$db=new database;
$res=$db->execute($sql);
$obj_user=mysql_fetch_object($res);
return $obj_user;
}
else echo "查询方式不对";
}
function get_moreusers()
{
global $db;
$argnums=func_num_args();
$argarr=func_get_args();
switch($argnums)
{
case 0:
$sql="SELECT * FROM `$this->usertable`";
break;
case 2:
$sql="SELECT * FROM `$this->usertable` WHERE $argarr[0]='$argarr[1]'";
break;
case 4:
$sql="SELECT * FROM `$this->usertable` WHERE $argarr[0]='$argarr[1]' AND $argarr[2]='$argarr[3]'";
break;
}
//$db=new database;
$res=$this->execute($sql);
$obj_arr=array();
while($obj=mysql_fetch_object($res))
{
$obj_arr[]=$obj;
}
return $obj_arr;
}
}
?>
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)