PHP объединяет два имени переменных

У меня есть php-скрипт, который получает $_POST, чтобы решить, какой массив вернуть. Бывший:

$n = $_POST['n']; // 1, 2 or 3

$a1 = array ('something', 'something else', 'another thing');

$a2 = array ('something 2', 'something else 2', 'another thing 2');

$a3 = array ('something 3', 'something else 3', 'another thing 3');

теперь я хочу получить массив, соответствующий значению $n, скажем, "2".

Как я могу сказать echo $a . $n, чтобы получить $a2

Спасибо.


person medk    schedule 01.09.2011    source источник


Ответы (2)


${'a'.$n} дает вам $a2, если $n равно 2.

person xdazz    schedule 01.09.2011

Было бы лучше, если бы вы сделали так:

$a = array();

$a[1] = array('bla bla', 'bla bla');
$a[2] = array('asdasd', 'asdasd');

И тогда вы можете позвонить так:

echo $a[intval($n)]
person Ernestas Stankevičius    schedule 01.09.2011
comment
+1: использовать массив для хранения серии массивов лучше, чем использовать несколько переменных. - person Raptor; 01.09.2011