【问题标题】:Why can't I place a variable into my array? [closed]为什么我不能将变量放入我的数组中? [关闭]
【发布时间】:2011-09-30 17:49:22
【问题描述】:

是否可以将数组中的变量作为 PHP 中的值。例如:

'arraykey' => "$varname",

它似乎不起作用,我在任何地方都找不到有关此的任何信息。也许是因为它不可能?任何见解都值得赞赏。谢谢。

【问题讨论】:

  • 是的,这是可能的,但是您拥有的代码不是用于创建数组(至少它不完整)。请发布一个完整的示例。
  • 您是否尝试过将其作为参考传递:&$varname。我自己没有尝试过,所以我不知道这是否可能。
  • 是引号引起了问题。感谢您的所有回答!

标签: php arrays variables


【解决方案1】:

可以,但不能使用双引号。它会导致变量的值被插入到字符串中。

使用这个:

$cow = "Mooo";
$varname = 'cow';

$a = array('arrayitem' => '$varname');

$var = $a['arrayitem'];

echo $$var;

或者更确切地说:不要使用它。它不会使您的代码非常易读。但这是可能的,如您所见。 :)

【讨论】:

    【解决方案2】:

    你的意思是:

    $array['item'] = $varname;
    

    规范中有很多用例:http://php.net/manual/en/language.types.array.php

    【讨论】:

      【解决方案3】:
      $array[] = $var;  
      $array['item'] = $var;
      

      不要在 "" 和 ''s 中使用 $variables

      【讨论】:

        【解决方案4】:

        完全可以,但变量名不需要引号。

        $x = 1;
        $y = 2;
        $z = "pasta";
        $myVars = array(
           'x' => $x,
           'y' => $y,
           'z' => $z
        );
        print_r($myVars);
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-11-25
          • 2021-10-22
          • 1970-01-01
          • 2020-09-02
          • 2021-09-09
          • 2012-05-29
          相关资源
          最近更新 更多