【问题标题】:PHP - Variable names as Array KeysPHP - 变量名作为数组键
【发布时间】:2011-12-30 02:28:03
【问题描述】:

我正在寻找类似 extract() 的反义词。

假设我有几个变量

$state = "FL";
$city = "Hollywood";
$zip = "33021";

如何创建一个使用变量名作为数组键的数组:

array( "state"=>"FL", "city"=>"Hollywood", "zip"=>"33021" );

【问题讨论】:

    标签: php arrays variables key


    【解决方案1】:

    您应该使用compact() 函数。如:

    $state = "FL";
    $city = "Hollywood";
    $zip = "33021";
    $array = compact('state', 'city', 'zip');
    

    编辑:似乎完全符合您的需要,不知道为什么您认为不需要它。如果您正在寻找与extract() 完全相反的东西完全,例如获取所有可用的变量并将它们放入一个数组中,那么您就不能这样做,因为 PHP 会真正采用 all 当前作用域中的变量,并将它们放入数组中。您必须以某种方式指定哪些变量。

    【讨论】:

    • 我不确定你是否正确......但你确实意识到他在问题中明确表示它不是compact() 对吗?
    • compact() 有一个缺点,因为大多数 IDE 不会意识到对这些变量的隐藏引用。
    • 是的,compact() 是答案,但请避免使用它以避免混淆。
    猜你喜欢
    • 2011-01-11
    • 1970-01-01
    • 2020-07-20
    • 1970-01-01
    • 2017-04-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-20
    • 1970-01-01
    相关资源
    最近更新 更多