如何使用php 5全局变量作为函数参数?

时间:2018-09-15 11:55:58

标签: php

我有一个非常非常简单的功能:

function pro_echo ($type, $key) {
    echo $type[$key];
}

例如,我想运行pro_echo('$_POST', 'my_post_val'),我希望$_POST['my_post_val']能够得到回音

但是我遇到“非法字符串偏移”错误:

2 个答案:

答案 0 :(得分:3)

pro_echo('$_POST', 'my_post_val')

您的参数是2个字符串,因为它们周围有引号。 试试

pro_echo($_POST, 'my_post_val');

答案 1 :(得分:1)

我不知道为什么为什么,但是这里需要的是变量

function pro_echo ($type, $key) {
    echo ${$type}[$key];
}
// and call it: note NO `$`!
pro_echo ('_POST', 'foo');
pro_echo ('_GET', 'bar');

但是我想最好将函数用作:

function pro_echo ($value) {
    echo $value; // modify echo as you need
}
// and call it:
pro_echo ($_POST['foo']);
pro_echo ($_GET['bar']);