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

Ваш аккаунт

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

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

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

Константы и PHP

12K
02 марта 2007 года
Slavok
20 / / 05.06.2006
Здравствуйте. В PHP-скрипте определяется ряд констант, затем по ходу выполнения программы нужно временно отключить константы, т.е. чтобы PHP считало их обычными строками. Можно ли это как-нибудь сделать?
Пример:
 
Код:
<?php
 define("PRAGMATICA", 100);
 //Что-то сделать
 $f =  "PRAGMATICA";
 echo($f); //и чтобы появилось PRAGMATICA, а не 100  
?>

Ясно, что можно определять константы до вывода, но это довольно сложно, нужно много переписать
18K
02 марта 2007 года
Karpenko
11 / / 08.07.2006
Цитата: Slavok
Здравствуйте. В PHP-скрипте определяется ряд констант, затем по ходу выполнения программы нужно временно отключить константы, т.е. чтобы PHP считало их обычными строками. Можно ли это как-нибудь сделать?
Пример:
 
Код:
<?php
 define("PRAGMATICA", 100);
 //Что-то сделать
 $f =  "PRAGMATICA";
 echo($f); //и чтобы появилось PRAGMATICA, а не 100  
?>

Ясно, что можно определять константы до вывода, но это довольно сложно, нужно много переписать


Немного не понял смысл вопроса....

13K
02 марта 2007 года
whitehood
73 / / 02.11.2006
тут про константы написано

В данном коде
 
Код:
<?php
 define("PRAGMATICA", 100);
 //Что-то сделать
 $f =  "PRAGMATICA";
 echo($f); //и чтобы появилось PRAGMATICA, а не 100  
?>


echo выведит "PRAGMATICA", а не 100
Так что
Цитата:
Немного не понял смысл вопроса....

271
03 марта 2007 года
MrXaK
721 / / 31.12.2002
очевидно, что писать надо в '' (читаем ман)
 
Код:
<?php
 define("PRAGMATICA", 100);
 //Что-то сделать
 $f =  'PRAGMATICA';
 echo($f); //и чтобы появилось PRAGMATICA, а не 100  
?>
622
03 марта 2007 года
nilbog
507 / / 19.12.2006
Цитата: Mr.Hacker
очевидно, что писать надо в '' (читаем ман)


лично мне не очевидно
так как у автора написано выведет PRAGMATIKA

12K
03 марта 2007 года
Slavok
20 / / 05.06.2006
Плохо объяснил. Попытаюсь подробнее. В программе определились константы. Далее разбирается ini, в котором есть строка:
font = FF_PRAGMATICA. Настройки из ini нужны для рисования диаграмм в JpGraph.
По ходу программы нужно вытащить название шрифта, т.е. PRAGMATICA, для этого нужно обработать строку “FF_PRAGMATICA”. Но PHP естественно вместо строки вставляет константу. Вопрос: можно ли на время в PHP отключить константы?

Код:
include_once ("jpgraph.php");
  include_once ("jpgraph_bar.php");
  include_once ("jpgraph_pie.php");
  include_once ("jpgraph_line.php");
 
 $ini = parse_ini_file("t.ini");
 $f =  $ini["font"];
 $g = new Graph(600, 600);
 $g->SetScale("textlin");
 $g->title->SetFont($f, FS_NORMAL, 20);
 $r = array(10, 20, 10) ;
 $p = new LinePlot( $r);
 $g->Add($p);
 //Здесь надо достать имя шрифта
 $tmp = str_replace("FF_", "", $f);
 $g->StrokeCSIM();
271
03 марта 2007 года
MrXaK
721 / / 31.12.2002
2nilbog ну просто код в '' уж точно никак не выполнится, что бы там внутри ни было... а вот внутри "" уже спорный вопрос
2Slavok а ты проверял, точно заменяется? вот например код из твоего вопроса ничего не заменил и вывел PRAGMATICA... сомневаюсь вообще что константы будут заменяться.. .ведь если рассудить, тогда любое сочетание букв внутри текста можно считать константой...
239
03 марта 2007 года
Dolonet
1.7K / / 20.05.2000
Первый раз слышу, чтобы какая-либо константа интерпретировалась внутри строки как константа, и вместо нее подставлялось значение. В такое готов поверить только в случае, если имя константы находится в двойных кавычках и фигурных скобках внутри кавычек.
8
03 марта 2007 года
mfender
3.5K / / 15.06.2005
Цитата: Dolonet
Первый раз слышу, чтобы какая-либо константа интерпретировалась внутри строки как константа, и вместо нее подставлялось значение. В такое готов поверить только в случае, если имя константы находится в двойных кавычках и фигурных скобках внутри кавычек.


Не. Константы даже так не интерпретируются. Если в строку вставлять, то обязательно с точками (.). И фигурные скобки не помогут.

2Slavok: константы определяются один раз и уничтожаются вместе с процессом скрипта.

12K
03 марта 2007 года
Slavok
20 / / 05.06.2006
Mr.Hacker: в первом примере я ошибся, там выводится PRAGMATICA.
Цитата: mfender

2Slavok: константы определяются один раз и уничтожаются вместе с процессом скрипта.


понятно, так и думал
Различные манипуляции с добавленями разных кавычек не помогают. Ладно, всем спасибо, что-нибудь придумаю

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог