Динамические имена переменных PHP между словами

У меня плохо спроектированная база данных, с которой мне приходится иметь дело. Чтобы иметь меньший объем кода, мне нужно использовать динамическое именование переменных в PHP. Однако имена каждой переменной сильно различаются. Вот пример моего кода:

<?php

$test = (object)[
'variable_1_text'   => 'ONE',
'variablevv_1_another_one'   => 'Two',
'variablett_1_blah'   => 'III',
'variablex_1_text_lala'   => 'Four',
'variable_2_text'   => 'ONE',
'variablevv_2_another_one'   => 'Two',
'variablett_2_blah'   => 'III',
'variablex_2_text_lala'   => 'Four',
'variable_3_text'   => 'ONE',
'variablevv_3_another_one'   => 'Two',
'variablett_3_blah'   => 'III',
'variablex_3_text_lala'   => 'Four',
'variable_4_text'   => 'ONE',
'variablevv_4_another_one'   => 'Two',
'variablett_4_blah'   => 'III',
'variablex_4_text_lala'   => 'Four',
];

//this doesn't work
foreach (array(1,2,3,4) as $temp_val) {
echo $test->variable_{$temp_val}_text . "<br />";
echo $test->variablevv_{$temp_val}_another_one . "<br />";
echo $test->variablett_{$temp_val}_blah . "<br />";
echo $test->variablex_{$temp_val}_text_lala . "<br />";
}

?>

Там много этих переменных. Мне просто нужно, чтобы динамически сделать эти 1, 2, 3 и 4 между именами имен переменных. Это вообще возможно?

0

Решение

Вы можете попробовать это:
$test->{'variable_'.$temp_val.'_text'};

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector