Ответ 1
Во-первых, это не переменные, а постоянные.
И вы можете проверить их существование с помощью функции defined()
:
bool defined ( string $name )
Проверяет, существует ли данная константа и определена ли она.
Поэтому я использую PHP-фреймворк fuelphp, и у меня есть эта страница, которая является HTML- файлом, поэтому я не могу использовать в ней PHP. У меня есть другой файл с верхней панелью, который мой HTML файл будет вызывать через ajax.
Как проверить, существует ли константа в PHP?
Я хочу проверить местонахождение файла каркаса fuelphp.
Вот константы, которые мне нужно проверить (на самом деле, я должен проверить только одну из них):
define('DOCROOT', __DIR__.DIRECTORY_SEPARATOR);
define('APPPATH', realpath(__DIR__.'/fuel/app/').DIRECTORY_SEPARATOR);
define('PKGPATH', realpath(__DIR__.'/fuel/packages/').DIRECTORY_SEPARATOR);
define('COREPATH', realpath(__DIR__.'/fuel/core/').DIRECTORY_SEPARATOR);
require APPPATH.'bootstrap.php';
редактировать:
Я понял, что это не переменные, а константы...
Во-первых, это не переменные, а постоянные.
И вы можете проверить их существование с помощью функции defined()
:
bool defined ( string $name )
Проверяет, существует ли данная константа и определена ли она.
Используйте функцию defined()
, например:
if (defined('VAR_NAME')) {
// Something
}
Проверьте с помощью defined('CONSTANT')
функции.
Пример из руководства:
<?php /* Note the use of quotes, this is important. This example is checking * if the string 'TEST' is the name of a constant named TEST */ if (defined('TEST')) { echo TEST; } ?>
здесь круче и более краткий способ сделать это:
defined('CONSTANT') or define('CONSTANT', 'SomeDefaultValue');
кредит: Дэниел в Невилл Дот, ТК https://www.php.net/manual/en/function.defined.php#84439
Я понимаю, вы подразумеваете, что CONSTANTS не переменные! функция defined();
см. здесь: defined
Я использую этот метод:
if (defined('My_variable') && (DEFAULT_LANGUAGE != '') && (DEFAULT_LANGUAGE != 'My_variable') )
{
// your codes here
}