Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php _uautoload()函数,如何使用_Php_Oop_Autoload_Global Scope - Fatal编程技术网

Php _uautoload()函数,如何使用

Php _uautoload()函数,如何使用,php,oop,autoload,global-scope,Php,Oop,Autoload,Global Scope,我刚从一本书开始学习PHP。在OOP一章中,有一个关于“自动加载类文件”的\uu autoload()函数的解释,但是我的书没有说明该函数应该在哪里声明 我试图在PHP文档中搜索它,但是我真的找不到应该在哪里声明这个函数。在“全局范围”中(我不知道它是否与JavaScript相同)?在应该自动加载的类中?或者在我必须加载类的类的“本地范围”中?使用u autoload()函数的方法是: <?php function __autoload($class){ if(f

我刚从一本书开始学习PHP。在OOP一章中,有一个关于“自动加载类文件”的
\uu autoload()
函数的解释,但是我的书没有说明该函数应该在哪里声明


我试图在PHP文档中搜索它,但是我真的找不到应该在哪里声明这个函数。在“全局范围”中(我不知道它是否与JavaScript相同)?在应该自动加载的类中?或者在我必须加载类的类的“本地范围”中?

使用u autoload()函数的方法是:

<?php

    function __autoload($class){
        if(file_exists($class . ".php")){
            require_once $class . ".php";
        }
    }


    $class1 = new Class1();
    $class2 = new Class2();

网上有几个教程。一个是,令人难以置信的是,一个投否决票的人能在大约2秒钟内看完整个问题,然后不解释原因就投了堂一票,谢谢投否决票的人。(当我看到donvote的时候,我把它贴成了doon,但我有一个延迟期)如果它是唯一的一个,就有可能被否决的选民是个白痴。一旦它开始达到-4,你应该看看你自己的问题。你的课文全是拼写错误,很难读。在进行适当的研究时,可以找到大多数信息。例如,您说您使用手册进行了研究,这很奇怪,因为它明确指出您应该使用
spl\u autoload\u register
。所以从表面上看,你真的没有在你的问题和研究上花费太多精力。@Carl你读过这样的规则吗?人们不想做你的家庭作业;)通常,自动加载器是在初始化例程中设置的,这是应用程序处理web请求之前首先要调用的事情之一。请参阅此处的“相关”侧栏
--->
,了解大量示例。
spl\u autoload\u register
往往更好,因为您可以同时激活多个。但是对于OP来说,这可能是一个好的开始!谢谢你的帮助,@Paul Dumitruy欢迎你,Carl。这是一个最基本的例子,你必须自己做一些研究,以了解更多。您可以在php.net网站上找到大量好的示例和许多信息。
<?php

    function __autoload($class){
        if(file_exists($class . ".php")){
            require_once $class . ".php";
        }
    }
<?php

    require_once 'something.php';

    $class1 = new Class1();
    $class2 = new Class2();