我需要从函数中获取静态变量的值,例如:
a、 b、c、d、e、f、g是函数测试((中的静态变量
test((.a或test("a"(,应该返回静态var的值a
test((.b或test("b"(,应返回静态var b 的值
等等!
我想不出你为什么需要这个,但现在开始:
<?php
function fnc($var){
static $a = 1;
static $b = 2;
return $$var;
}
echo fnc("a").",".fnc("b")."n"; // 1,2
关于$$var
,请参见可变变量
演示位置https://3v4l.org/2CqSu
Dot(.
(是一个字符串串联,我不知道如何在PHP中覆盖它。您可以使用->
代替:
function weird($var = null)
{
static $a = 'a', $b = 'b', $c = 'c', $d = 'd', $e = 'e';
if (func_num_args())
{
return $$var;
}
return (object) get_defined_vars();
}
$result = weird('a') . weird()->b . weird('c');