自动加载{}

在本文中

PHP请求的自动加载程序。

描述

此自动加载器以区分大小写的方式支持基于PSR-4的Requests 2.0.0类,因为最常见的服务器操作系统是区分大小写的,并且文件名是混合大小写的。

对于PSR-0 Requests 1.x BC-layer,所请求的类将按大小写敏感处理。

方法

姓名描述
自动加载::加载自动装载机。
自动加载::寄存器注册自动加载器。

来源

最终类自动加载{/***旧PSR-0类名的列表,以小写形式作为键,PSR-4区分大小写的名称作为值。**@var数组*/私有静态$deprecated_classes=[//接口。“requests_auth”=>“\WpOrg\requests\auth”,“requests_hooker”=>“\WpOrg\requests\HookManager”,“requests_proxy”=>“\WpOrg\requests\proxy”,“requests_transport”=>“\WpOrg\requests\transport”,//课程。“requests_cookie”=>“\WpOrg\requests\cookie”,“requests_exception”=>“\WpOrg\requests\exception”,'requests_hook'=>'\WpOrg\requests\hooks',“requests_idnaencoder”=>“\WpOrg\requests\idnaencoder”,“requests_ipv6”=>“\WpOrg\requests\ipv6”,“requests_iri”=>“\WpOrg\requests\iri”,'requests_response'=>'\WpOrg\requests\response',“requests_session”=>“\WpOrg\requests\session”,“requests_ssl”=>“\WpOrg\requests\ssl”,“requests_auth_basic”=>“\WpOrg\requests\auth\basic”,“requests_cookie_jar”=>“\WpOrg\requests\cookie\jar”,“requests_proxy_http”=>“\WpOrg\requests\proxy\http”,“requests_response_headers”=>“\WpOrg\requests\response\headers”,“requests_transport_curl”=>“\WpOrg\requests\transport\curl”,'requests_transport_sockopen'=>'\WpOrg\requests\transport\fsockopen`,'requests_utility_caseinsensitivedictionary'=>'\WpOrg\requests\utility\CaseInsitiveDictionary',“requests_utility_filterediterator”=>“\WpOrg\requests\utility\filterediterator”,“requests_exception_http”=>“\WpOrg\requests\exception\http”,'requests_exception_transport'=>'\WpOrg\requests\exception\transport',“requests_exception_transport_curl”=>“\WpOrg\requests\exception\transport\curl”,“requests_exception_http_304”=>“\WpOrg\requests\exception\http\Status304”,“requests_exception_http_305”=>“\WpOrg\requests\exception\http\Status305”,“requests_exception_http_306”=>“\WpOrg\requests\exception\http\Status306”,'requests_exception_http_400'=>'\WpOrg\requests\exception\http\Status400',“requests_exception_http_401”=>“\WpOrg\requests\exception\http\Status401”,“requests_exception_http_402”=>“\WpOrg\requests\exception\http\Status402”,“requests_exception_http_403”=>“\WpOrg\requests\exception\http\Status403”,“requests_exception_http_404”=>“\WpOrg\requests\exception\http\Status404”,“requests_exception_http_405”=>“\WpOrg\requests\exception\http\Status405”,“requests_exception_http_406”=>“\WpOrg\requests\exception\http\Status406”,“requests_exception_http_407”=>“\WpOrg\requests\exception\http\Status407”,“requests_exception_http_408”=>“\WpOrg\requests\exception\http\Status408”,“requests_exception_http_409”=>“\WpOrg\requests\exception\http\Status409”,“requests_exception_http_410”=>“\WpOrg\requests\exception\http\Status410”,“requests_exception_http_411”=>“\WpOrg\requests\exception\http\Status411”,“requests_exception_http_412”=>“\WpOrg\requests\exception\http\Status412”,“requests_exception_http_413”=>“\WpOrg\requests\exception\http\Status413”,“requests_exception_http_414”=>“\WpOrg\requests\exception\http\Status414”,“requests_exception_http_415”=>“\WpOrg\requests\exception\http\Status415”,“requests_exception_http_416”=>“\WpOrg\requests\exception\http\Status416”,'requests_exception_http_417'=>'\WpOrg\requests\exception\http\Status417',“requests_exception_http_418”=>“\WpOrg\requests\exception\http\Status418”,“requests_exception_http_428”=>“\WpOrg\requests\exception\http\Status428”,“requests_exception_http_429”=>“\WpOrg\requests\exception\http\Status429”,“requests_exception_http_431”=>“\WpOrg\requests\exception\http\Status431”,“requests_exception_http_500”=>“\WpOrg\requests\exception\http\Status500”,“requests_exception_http_501”=>“\WpOrg\requests\exception\http\Status501”,“requests_exception_http_502”=>“\WpOrg\requests\exception\http\Status502”,“requests_exception_http_503”=>“\WpOrg\requests\exception\http\Status503”,“requests_exception_http_504”=>“\WpOrg\requests\exception\http\Status504”,“requests_exception_http_505”=>“\WpOrg\requests\exception\http\Status505”,“requests_exception_http_511”=>“\WpOrg\requests\exception\http\Status511”,'requests_exception_http_unknown'=>'\WpOrg\requests\exception\http\StatusUnknown`,];/***注册自动加载器。**注意:自动加载器在自动加载队列中是“预先添加的”。*这样做是为了确保Requests 2.0自动加载器优先*通过潜在的(已注册的依赖项)请求1.x自动加载器。**@internal此方法包含对自动加载器的保护*多次注册。此保护使用全局常量*(希望/在大多数情况下)仍能正常工作,即使*类将被重命名。**@返回void*/公共静态函数register(){if(已定义('REQUESTS_AUTOLOAD_REGISTERED')===false){spl_autoload_reregister([self::class,'load'],true);define('REQUESTS_AUTOLOAD_REGISTERED',true);}}/***自动装载机。**@param string$class_name要加载的类名的名称。**@return bool是否加载了类。*/公共静态函数加载($class_name){//检查类是否以“Requests”(PSR-0)或“WpOrg\Requests“(PSR-4)开头。$psr_4_prefix_pos=strpos($class_name,'WpOrg\\Requests\\');if(stripos($class_name,'Requests')!==0&&$psr_4_prefix_pos!==0) {返回false;}$class_lower=strtolower($class_name);if($class_lower===“请求”){//对原始PSR-0请求类的引用。$file=目录名(__DIR__)。'/library/Requests.php';}elseif($psr_4_prefix_pos===0){//PSR-4类名。$文件=__DIR__.'/'。strtr(substr($class_name,15),'\\','/')。'。php';}if(isset($file)&&file_exists($file)){包括$file;返回true;}/**好的,所以课程以“Requests”开始,但我们找不到文件。*如果这是请求的弃用/重命名的PSR-0类之一,*让我们将其别名为新名称并抛出一个弃用通知。*/if(isset(self::$deprecated_classes[$class_lower]){/**尚未升级到PSR-4类名的集成商可以消除反对意见*通过定义“REQUESTS_SILENCE_PSR0_DEPRECATIONS”常量并将其设置为“true”。*在请求第一个不推荐使用的类之前,需要定义常量*通过这个自动加载器。*/if(!defined('REQUESTS_SILENCE_PSR0_DEPRECATIONS')||REQUESTS SILENCE_PSR0_DEPRESCATIONS!==true){//phpcs:忽略WordPress。菲律宾比索。开发功能.error_log_trigger_error触发器错误('PSR-0 `Requests_…`Requests库中的类名已弃用。”.'切换到PSR-4 `WpOrg\Requests\…`在您方便的时候尽早命名。',E_USER_DEPRECATED(用户已升级));//防止抛出两次弃用通知。if(!已定义('REQUESTS_SILENCE_PSR0_DEPRECATIONS')){define('REQUESTS_SILENCE_PSR0_DEPRECATIONS',true);}}//创建一个别名,让自动加载器递归地加载PSR-4类。return class_alias(self::$deprecated_classes[$class_lower],$class_name,true);}返回false;}}

用户贡献的笔记

你必须登录在能够发表注释或反馈之前。