相关疑难解决方法(0)

是否有一个call_user_func()等效于创建一个新的类实例?

如何创建一个具有给定数组参数的类以发送给构造函数?有点像:

class a {
    var $args = false;
    function a() {$this->args = func_get_args();}
}

$a = call_user_func_array('new a',array(1,2,3));
print_r($a->args);
Run Code Online (Sandbox Code Playgroud)

理想情况下,PHP4和PHP5都需要在不修改类的情况下工作.有任何想法吗?

php php4 class

21
推荐指数
2
解决办法
7863
查看次数

call_user_func_array将参数传递给构造函数

我搜索了很多页面的Google搜索结果以及此处的stackoverflow,但找不到适合我情况的解决方案.我似乎只在我试图构建的函数中有一个最后的障碍,它使用call_user_func_array来动态创建对象.

我得到的可捕获的致命错误是Object of class Product could not be converted to string.当错误发生时,在日志中我得到其中五个(每个参数一个):PHP Warning: Missing argument 1 for Product::__construct(),在可捕获的致命错误之前.

这是函数的代码:

public static function SelectAll($class, $table, $sort_field, $sort_order = "ASC")
{  
/* First, the function performs a MySQL query using the provided arguments. */

$query = "SELECT * FROM " .$table. " ORDER BY " .$sort_field. " " .$sort_order;
$result = mysql_query($query);

/* Next, the function dynamically gathers the appropriate number and names of properties. */

$num_fields = mysql_num_fields($result); …
Run Code Online (Sandbox Code Playgroud)

php mysql oop constructor

10
推荐指数
1
解决办法
1万
查看次数

标签 统计

php ×2

class ×1

constructor ×1

mysql ×1

oop ×1

php4 ×1