Форум → Программирование → PHP для идиотов → Как вставить константу в строку?
Как вставить константу в строку?
Страницы: ← Предыдущая страница • Следующая страница →
-
5 марта 2009 г. 8:09, спустя 3 минуты 50 секунд
adw0rd, это действительно не работает. Фигурные скобки для массивов.
smackthat, нафига тебе именно "без конкатенации"? В чем сакральный смысл? -
-
5 марта 2009 г. 8:24, спустя 2 минуты 5 секунд
AlexB, я никогда не юзал, просто предложил :)https://smappi.org/ - платформа по созданию API на все случаи жизни -
5 марта 2009 г. 9:38, спустя 1 час 14 минут 35 секунд
вот в чем сакральный смысл: есть файл с константами<? // modes define("MODE_MAIN",0); define("MODE_NEWS",1); define("MODE_ADMIN",2); define("MODE_REGISTER",3); define("MODE_LOGIN",4); define("MODE_CABINET",5); // submodes define("SUBMODE_DEFAULT",0); define("SUBMODE_REG_CHECK",1); define("SUBMODE_LOGIN_EXIT",1); define("SUBMODE_ADMIN_ADD",2); define("SUBMODE_ADMIN_EDIT",3); define("SUBMODE_ADMIN_UPDATE",4); define("SUBMODE_ADMIN_DELETE",5); ?>
он определяет как будет формироваться содержание сайта, тоесть что нужно выводить. Немного кода:function addContent() { $htmlCode=""; $mode=getValueFrom_GET('mode'); switch($mode) { // главная страница case MODE_MAIN: add(welcome_func(),$htmlCode); break; case MODE_NEWS: add(read_news_func(),$htmlCode); break; case MODE_ADMIN: add(edit_news_func(),$htmlCode); break; case MODE_REGISTER: add(registration_func(),$htmlCode); break; case MODE_LOGIN: add(login_func(),$htmlCode); break; case MODE_CABINET: add(cabinet_func(),$htmlCode); break; } return $htmlCode; }
тут все хорошо, константы отлично вписались вместо цифр и не парят. Но вот, когда это нужно впихнуть в строку, при выводе
html кода в ссылке например:// выводим все статьи в список add("<h2>$title</h2> <p>$text …<br> <a class=\"links_small\" href=\"index.php?mode=". MODE_ADMIN ."&submode=" . SUBMODE_ADMIN_EDIT . "&id=$id\">изменить</a> | <a class=\"links_small\" href=\"index.php?mode=" . MODE_ADMIN . "&submode=" . SUBMODE_ADMIN_DELETE . "&id=$id\">удалить</a></p><br>",$htmlCode);
это же какой-то кашмар!!!
блин, что с форумом, оно вместо \ пишет #38 -
5 марта 2009 г. 9:56, спустя 18 минут 7 секунд
ну так и надо делать епт
ну так сделай
$var = CONST;
echo "wdwddw $var dwdwdw"; -
5 марта 2009 г. 10:08, спустя 11 минут 36 секунд
та некрасиво так, что я в переменную константу записывать буду? какой тогда смысл в той константе -
-
5 марта 2009 г. 10:10, спустя 58 секунд
сделай константы через регистри и в строке делай так
echo "{Registry::get('CONSTANT')}"
но хз будет воркать или нет -
5 марта 2009 г. 10:15, спустя 5 минут 2 секунды
не работает. Я тут думаю может в попу те константы и все строками делать? Не упадет ли производительность при сравнении в конструкциях switch? -
5 марта 2009 г. 10:26, спустя 10 минут 12 секунд
извращения:<?php define('CONST', 'Йа - константа!'); extract(get_defined_constants()); echo "Ты константа? — <h1>$CONST</h1>";
не работает. Я тут думаю может в попу те константы и все строками делать? Не упадет ли производительность при сравнении в конструкциях switch?
— эффективное программирование на PHP — оссобенно внимательно раздел "Вступление в эффективное программирование". После прочтения все подобные вопросы должны исчезнуть.
В твоем случае — задавай свои параметры переменными и не мучайся. -
5 марта 2009 г. 10:30, спустя 3 минуты 55 секунд
Конкатентация константы со строкой это единственный не кошмар в этом кошмарном коде. -
5 марта 2009 г. 10:32, спустя 2 минуты 52 секунды
Конкатентация константы со строкой это единственный не кошмар в этом кошмарном коде.
А что там кошмарного? Поподробнее пожалуйста, я только учусь, и рад советам! -
-
-
5 марта 2009 г. 10:35, спустя 1 минуту 8 секунд
блин, что с форумом, оно вместо \ пишет #38
это фича
А зачем она? Или подкалуешь?
Страницы: ← Предыдущая страница • Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!