Что делает (обратная косая черта) в PHP (5.3+)?
Что значит делать в PHP?
например, CSRF4PHP и FALSE
,session_id
и Exception
:
public function __construct($timeout=300, $acceptGet=FALSE){
$this->timeout = $timeout;
if (session_id()) {
$this->acceptGet = (bool) $acceptGet;
} else {
throw new Exception('Could not find session id', 1);
}
}
4 ответа:
\
(обратная косая черта) является разделителем пространства имен в PHP 5.3.A
\
перед началом функции представляет собой Глобальное Пространство Имен.помещая его туда, вы убедитесь, что вызываемая функция из глобального пространства имен, даже если в текущем пространстве имен есть функция с тем же именем.
чтобы прояснить потенциальную путаницу:
обратная косая черта не означает наследование классов.
в дальнейшем
Animal
,Dog
,Shepherd
не должны быть классы, а просто пространства имен. Значение чего-то используется для группировки имен вместе с избежать конфликтов имен.$myDog = new \Animal\Dog\Shepherd\GermanShepherd();
ведущий
\
означаетAnimal
была объявлена в глобальной области видимости.
на
\
используется в PHP 5.3 для пространств имен. См.http://www.php.net/manual/en/language.namespaces.rationale.php для получения дополнительной информации о пространствах имен и PHP.
пространства имен
в PHP 5.3+ обратная косая черта
\
символ используется в пространствах имен. Это начальный символ для обозначения пространства имен, а также служит разделителем между именами подпространств.посмотреть официальную документацию о пространства имен.
Opcache
кроме того, в PHP 7.0+ некоторые функции заменен на opcodes by OPCache, что делает эти конкретные функции, работать намного быстрее. Однако это работает только тогда, когда функции помещаются в корневое пространство имен. Смотрите это обсуждение об этой теме. Так что помимо пространства имен,
\
косвенно тоже влияет на оптимизацию кода.следующие собственные функции извлекают выгоду из этого эффекта:
"array_slice" "assert" "boolval" "call_user_func" "call_user_func_array" "chr" "count" "defined" "doubleval" "floatval" "func_get_args" "func_num_args" "get_called_class" "get_class" "gettype" "in_array" "intval" "is_array" "is_bool" "is_double" "is_float" "is_int" "is_integer" "is_long" "is_null" "is_object" "is_real" "is_resource" "is_string" "ord" "strlen" "strval"