Вставка элементов ассоциативных массивов в PHP
А вот вставка элементов ассоциативных массивов просто так работать не будет:
<?php
$arr = ['a'=>1, 'b'=>2, 'c'=>3];
echo "xxx $arr['a'] yyy"; // не работает
?>
Для вставки таких элементов их необходимо обернуть в фигурные скобки:
<?php
$arr = ['a'=>1, 'b'=>2, 'c'=>3];
echo "xxx {$arr['a']} yyy";
?>
Либо можно снять одинарные кавычки с ключа при вставке:
<?php
$arr = ['a'=>1, 'b'=2, 'c'=3];
echo "xxx $arr[a] yyy";
?>
Иногда имеет смысл тупо записать элемент массива в переменную, чтобы затем без проблем выполнить вставку переменной в строку:
<?php
$arr = ['a', 'b', 'c'];
$elem = $arr['a'];
echo "xxx $elem yyy";
?>
Упростите следующий код:
<?php
$arr = ['a' => 1, 'b' => 2, 'c' => 3];
echo 'text ' . $arr['a'] . ' text ' . $arr['b'] . ' text';
?>