используя% D в константе для отправки переменной - PullRequest
1 голос
/ 26 мая 2011

Я помню, как где-то использовал% D или что-то подобное, чтобы объявить константу, где при вызове константы передается значение% D.

define("EVENT_DATE","The event date is %D");

Любая информация по этому вопросу, как это работает, пожалуйста?

Ответы [ 3 ]

4 голосов
/ 26 мая 2011

Выезд sprintf() и printf().

Пример:

define('EVENT_DATE', 'The event date is %s.');
echo sprintf(EVENT_DATE, 'tomorrow morning');

Выше будет отображаться:

The event date is tomorrow morning.

Если все, что вы хотите сделать, это распечатать, и вы абсолютно уверены, что строка не нуждается в применении htmlspecialchars(), то вы можете использовать printf() напрямую. Он работает так же, как sprintf(), но выводит результат вместо того, чтобы возвращать его.


Как Мел отмечает во время подавления голосования, %D - это действительно strftime() формат. Проверьте это и проверьте пример Мела о том, как его использовать.

1 голос
/ 26 мая 2011

Определенный% D используется в strftime:

<?php
define('EVENT_DATE', 'The event date is %D');
$eventDate = mktime(0, 0, 0, 5, 31);
echo strftime(EVENT_DATE, $eventDate);
?>

Дает: The event date is 05/31/11

1 голос
/ 26 мая 2011

Вы можете объявить константы для вашей программы в php:

define("CONSTANT_EXAMPLE", 2);
echo CONSTANT_EXAMPLE * CONSTANT_EXAMPLE;

Это будет эхо 4.

...