1. 程式人生 > >PHP使用字串傳遞變數名和函式名

PHP使用字串傳遞變數名和函式名

<?php
function showTime($val = null) {
    if ($val) {
        return time();
    } else {
        return 'param error!';
    }
}
$param = 1;
var_dump(call_user_func_array('showTime', [$param]));
echo '<br />';
var_dump(call_user_func_array('showTime', []));
echo '<br />';
var_dump(call_user_func_array('time', []));
echo '<br />';

$data = ['status' => 1, 'info' => 'data is ok!', 'rows' => ['rowid' => 1]];
$variable = '$data';
$variable = substr($variable, 1);
$variableParam = 'status';
$return = $$variable;
var_dump($return);
echo '<br />';
if ($variableParam) {
    $value = $return[$variableParam];
}
var_dump($value);
echo '<br />';
var_dump(call_user_func_array('showTime', [$value]));
echo '<br />';