中的call_user_func所以我想用call_user_func
將數據傳遞給函數的可選參數。我如何將一個函數作爲可選變量傳遞給PHP
下面是一個代碼示例,可選參數$data
表示在另一個文件中聲明的稱爲data
的功能。我只是想通過使用call_user_func
來調用該函數,該函數將該函數的名稱設置爲參數,並在createtable函數中調用它,但似乎不起作用。
我從PHP手冊中獲得了示例,但createTable
包含許多參數。我如何才能讓call_user_func
僅將data
字符串分配給可選參數$data
設爲NULL
爲默認值?
function createTable($database, $table, $patch,$data = NULL)
{
echo "INFO: Adding '$table'in database '$database'.\n";
$sql = "SHOW TABLES FROM $database WHERE Tables_in_$database='$table';";
$result = mysql_query($sql);
$result_count = mysql_num_rows($result);
if ($result_count != 1) {
echo "ERROR: Can not find table '$table' in database '$database'.\n";
$result = mysql_query($patch);
if (false === $result) {
echo "ERROR: Adding Table '$table' in database '$database' ... Failed\n";
return false;
}
else {
echo "INFO: Adding Table '$table'in database '$database' ... Success\n";
// using the optional parameter here
$data();
return true;
}
} else {
if ($result_count == 1) {
echo "ERROR: Table '$table'already in database '$database'.\n";
return false;
}
}
}
// Now I'm passing value to the optional parameter $ data that is NULL as default.
call_user_func('createTable', "data");
使用PHP版本5.2.11 – JBa
那麼爲什麼你用'php-5.3'和'php-5.4'標記你的問題? –
更好地讓我的問題被整個PHP社區看到。 – JBa