PHP转换数组条目

时间:2012-01-30 09:10:18

标签: php

嗨,我有这样的疑问。 我有一个包含4个条目的php数组。我需要用它们创建一个CLASS任务。

$array=array('USER','username','other','test');

我想用它来生成这个

    $array[0]::find_by_$array[1]($array[3]); 

it must look as    
    USER::find_by_username(test);

如何将数组值转换为此行? 什么是正确的语法?

3 个答案:

答案 0 :(得分:2)

call_user_func_array(array($array[0],'find_by_'.$array[1]),$array[3])

但这不是管理代码最干净的方法,没有验证类或方法是否存在,因此可能会失败

答案 1 :(得分:1)

您可以使用call_user_func_array使用数组作为参数调用callback

$callback = array($array[0], 'find_by_'.$array[1]);
$params = array($array[3]);

$ret = call_user_func_array($callback, $params);

答案 2 :(得分:1)

call_user_func_array

call_user_func_array(array($array[0], 'find_by_'.$array[1]), $array[3]);