Как объединить переменную и строку, чтобы сформировать новую переменную?

1

Можно ли комбинировать переменную и строку с новой переменной и повторить ее?

У меня есть следующая строка:

$string = '01001'

Попробуйте что-то вроде:

$var = $_$string

В конечном счете, я хочу получить var, как $_01001 который я могу распечатать. Поэтому, если у меня есть куча данных вроде:

$_01001 = 'foo'; $_01002 = 'bar'; $_01003 = 'fooz'; $_01004 = 'barz';

Итак, echo $_01001; будет производить foo... спасибо заранее.

  • 0
    да, это возможно с переменными переменными , почему в любом случае вы хотите так называть эти значения?
  • 0
    $$ _____________
Теги:

2 ответа

2
Лучший ответ

Да, вы можете использовать. посмотрите ниже пример:

$_01001 = 'foo';
$_01002 = 'bar';

$string1 = '01001';
$string2 = '01002';

echo ${"_$string1"};
echo ${"_$string2"};

Выход: foobar

доступный в переменной Variable переменной

  • 0
    Работал отлично. Спасибо!
  • 0
    Быстрый вопрос, как я могу заставить это работать в цикле ... кажется, только в первый раз?
Показать ещё 2 комментария
1
$string = '01001';
$vals = [
    '01001' => 'foo',
    '01002' => 'bar',
    '01003' => 'fooz',
    '01004' => 'barz',
];
echo $vals[$string];   // produces "foo"

Я знаю, скучно и не хватает магии. Но удобный для чтения код часто бывает скучным и бесхитростным. Переменные переменные voodoo существуют в PHP, но будут просто отвлекать будущих читателей/сопровождающих (включая вас 1+ через несколько недель) от того, что вы действительно пытаетесь сделать в своей логике.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню