首页 > 解决方案 > 您可以回显/打印传递给函数的 $ 变量名称吗?

问题描述

假设我有一个传递字符串的函数:

function foo($var) {
    echo 'Variable Passed: ' . ???
}

我想打印/访问该???部分,因此在使用该函数时,我可以打印传递的实际字符串名称:

foo($myStringName);

Variable Passed: $myStringName

PHP有办法吗???部分?

标签: php

解决方案


您可以遍历$GLOBALS变量并检查是否与传递的变量名称匹配

function printVarName($var) {
    foreach($GLOBALS as $varName => $val) {
        if ($val === $var) {
            echo 'Variable Passed: $'.$varName;
        }
    }

    return false;
}

$vars = 1;
printVarName($vars); //prints Variable Passed: $vars

推荐阅读