Как вставить переменную в массив PHP?

Я посмотрел на некоторые ответы в интернете, но ни один из них не очень точны.

Я хочу иметь возможность сделать это:

$id = "" . $result ["id"] . "";
$info = array('$id','Example');

echo $info[0];

возможно ли это каким-либо образом?

3 ответов


что вам нужно (не рекомендуется):

$info = array("$id",'Example'); // variable interpolation happens in ""

или просто

$info = array($id,'Example'); // directly use the variable, no quotes needed

вы заключили переменную внутри одинарных кавычек и внутри одинарных кавычек интерполяция переменных не происходит и '$id' рассматривается как строка длины три, где первый символ-доллар.


просто не ставьте его в кавычки:

$id = $result["id"];
$info = array($id, 'Example');
echo $info[0];

альтернативно, если вы используете двойные кавычки, а не одинарные кавычки, то он будет интерполирован (что также приводит к его преобразованию в строку):

$id = $result["id"];
$info = array("$id", 'Example');
echo $info[0];

Да, вы можете хранить переменные в массивах, хотя вам нужно будет удалить пространство между $result и открывающая скобка.

$foo = $result["bar"]; // assuming value of 'bar'

$collection = array( $foo, "fizz" );

foreach ( $collection as $item ) {
  // bar, fizz
  echo $item;
}