当前位置: 首页 > 面试题库 >

如何在PHP中以字符串形式获取变量名?

韩单弓
2023-03-14
问题内容

说我有这个PHP代码:

$FooBar = "a string";

然后,我需要一个这样的功能:

print_var_name($FooBar);

打印:

FooBar

任何想法如何实现这一目标?在PHP中甚至有可能吗?


问题答案:

您可以使用get_defined_vars()来查找与您要查找其名称的变量具有相同值的变量的名称。显然,这并不总是可行的,因为不同的变量通常具有相同的值,但这是我想到的唯一方法。

编辑:get_defined_vars()似乎不能正常工作,它返回’var’,因为在函数本身中使用了$ var。$
GLOBALS似乎有效,因此我将其更改为该值。

function print_var_name($var) {
    foreach($GLOBALS as $var_name => $value) {
        if ($value === $var) {
            return $var_name;
        }
    }

    return false;
}

编辑:要明确,在PHP中没有好的方法可以这样做,这可能是因为您不必这样做。可能有更好的方法来做您想做的事情。



 类似资料:
  • 本文向大家介绍如何在Python中以字符串形式获取函数名称?,包括了如何在Python中以字符串形式获取函数名称?的使用技巧和注意事项,需要的朋友参考一下 每个函数都有一个名为__name__的属性。我们可以访问该属性并获取函数的名称。例如: 这将给我们输出:

  • 在Dart中提供枚举之前,我编写了一些繁琐且难以维护的代码来模拟枚举,现在我想简化它。我需要以字符串形式获取枚举的名称,例如可以用Java完成,但不能。 例如,小测试代码片段返回'day。星期一“在每种情况下,我想要的是”星期一” 我是否正确,要获得“星期一”,我需要解析字符串?

  • 问题内容: 假设我以如下方式实例化Java对象: 现在,是否可以从一种类方法中获取字符串形式的var对象的名称? 其他详细信息(已编辑): 我之所以想获取持有该对象引用的变量的名称,是因为我的new变量将在页面上创建一个新的clickable ,需要调用一个函数。在插入新对象时,我需要知道持有对象引用的变量的名称。也许有更好的方法吗? 您是对的,对术语的混淆感到抱歉。 我之所以想获取持有该对象引用

  • 问题内容: 我正在尝试检索所有联系人的姓名和电话号码,并将它们放入iOS中的Swift数组中。我到目前为止已经做到了: 完成后,将完全包含我所有联系人姓名的数组。即“ John Doe”。但是,返回一个值数组,例如 我想知道如何仅将电话号码作为字符串值即“ XXXXXXXXXX”来检索。基本上,如何调用数字值。谢谢! 问题答案: 我找到了解决方案:

  • 我使用JSCH-SSH库在“shell”通道中执行命令,但无法找到一种方法来做两件事:- 1)如何查找命令是否在远程unix box上完全执行? 2)如何在String中捕获命令输出,而不是在System.out控制台上打印? 下面是我的代码片段,它可以很好地在系统上显示shell命令输出。出来 注意:我不想使用“exec”通道,因为它为每个命令启动一个新进程,并且不记得导出的“session”变