Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Переменная переменная

396
23 октября 2010 года
SibBear
223 / / 27.07.2006
Есть переменныя вида
$TEXT_1
$TEXT_2

и т.п.

 
Код:
define("TEXT_1", "текст 1");
define("TEXT_2", "текст 2");
define("TEXT_3", "текст 3");


как сделать цикл
 
Код:
for ($i=1; $i<4; $i++) echo $TEXT_$i;

вот как то так...
244
23 октября 2010 года
UAS
2.0K / / 19.07.2006
Во-первых - это не переменные, а константы.
Во-вторых - никак.
В-третьих - используйте массивы.

В-четвертых - есть изврат, типа $z = "TEXT_1"; echo $$z; - это сработает на переменных, но это УГ. Но у вас констатнты, значит смотрите пункт 2.
В-пятых - использовать eval - сработает, но руки за такой код оторвать мало.
В-шестых - использовать функцию php, которая собирает инфу о всех константах, затем в цикле пробегать, делать сравнение по маске для TEXT_* и выводить. Изврат ещё больше, чем 5ый пункт.

Так что смотрите третий пункт.
285
23 октября 2010 года
Romik
479 / / 24.11.2002
[highlight=php]
define("TEXT_0", "some default string");
define("TEXT_1", "text 1");
define("TEXT_2", "text 2");
for($i=1;$i<3;$i++){
echo constant( "TEXT_" . $i . "\n");
}
[/highlight]
396
23 октября 2010 года
SibBear
223 / / 27.07.2006
Спасибо! То, что нужно
369
25 октября 2010 года
Kesano
451 / / 09.10.2007
Ну, тогда можно еще проще:
$arr["TEXT_1"] = "Aaaa";
$arr["TEXT_2"] = "Bbbb";
$arr["TEXT_3"] = "Cccc";

foreach (...) {
}
или
for ( $i=0 ... ) {
echo $arr["TEXT_".$i];
}
285
25 октября 2010 года
Romik
479 / / 24.11.2002
Среди прочих отличий при использованием переменных и констант есть одна заслуживающая внимания - константы глобальны и задаются один раз. Именно потому некоторые PHP-программисты отдают им своё предпочтение в языковых модулях.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог