Что делает \
в PHP?
Что делает \ (обратная косая черта) в PHP (5.3+)?
Ответы (4)
\
(обратная косая черта) - разделитель пространства имен в PHP 5.3.
\
перед началом функции представляет глобальное пространство имен.
Помещение его туда гарантирует, что вызываемая функция находится из глобального пространства имен, даже если в текущем пространстве имен есть функция с тем же именем.
FALSE
стоит обратная косая черта?
- person RaelB; 11.03.2020
Чтобы прояснить потенциальную путаницу:
Обратная косая черта не подразумевает наследование класса.
Далее Animal
, Dog
, Shepherd
не обязательно должны быть классами, а должны быть просто пространствами имен. Означает что-то, что используется для группировки имен, чтобы избежать конфликтов имен.
$myDog = new \Animal\Dog\Shepherd\GermanShepherd();
Ведущий \
означает, что Animal
был объявлен в глобальной области видимости.
Пространства имен
В PHP 5.3+ в пространствах имен используется обратная косая черта \
. Это начальный символ, обозначающий пространство имен, а также служит разделителем между именами подпространств имен.
См. Официальную документацию по пространству имен.
Opcache
Кроме того, в PHP 7.0+ некоторые функции заменены кодами операций на 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"
\
используется в PHP 5.3 для пространств имен. См. http://www.php.net/manual/en/language.namespaces.rationale.php для получения дополнительной информации о пространствах имен и PHP.