LINUX.ORG.RU

PHP define массив.


0

0

Добрый день, подскажите:

Почему так не работает?

define = array("IT" => 100,
              "IT_talk" => 101,
              "SAP" => 102,
              "SAP_talk" => 103,
        );

А так работает...

define("IT", 100);
define("IT_talk", 101);

Не хочется много строчек писать define.

P.S. что такое PHP почти без понятия. В плане как писать на нём... Гуглил.

★★★★★

Почему так не работает?


Потомучто это неправильный синтаксис. define может определить только константу, а не массив констант (такого не бывает) и уж точно массив нельзя присвоить ключевому слову.

Viglim
()
Ответ на: комментарий от Viglim

Спасибо!

Понял, спасибо! Так и подумал, ибо читал.

DALDON ★★★★★
() автор топика

Константой называется именованная величина, которая не изменяется в процессе выполнения программы (скрипта).

В отличие от переменных, вы не можете изменять значения констант, которые были им присвоены при их объявлении. Константы удобно использовать для хранения значений, которые не должны изменяться во время работы программы. Константы могут содержать только скалярные данные (логического, целого, плавающего и строкового типов).

VirRaa ★★★
()

>Не хочется много строчек писать define.
напиши функцию, в которую можно будет передавать массив. Хотя не помню как там с областью видимости, могут быть грабли

nu11 ★★★★★
()

Не хочется много строчек писать define.


а что в этом плохого? лучше жертвовать удобочитаемостью?

я видел исходники, где этих define было страниц на 5

anonymous
()
Ответ на: комментарий от BlackHawk

Ну неправда же. Можно объявить константу и внутри неймспейса

boombick ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.