gpt4 book ai didi

php - __autoload 与包含家庭

转载 作者:IT王子 更新时间:2023-10-28 23:59:53 24 4
gpt4 key购买 nike

我今天发现了 __autoload 函数,在阅读了该函数的官方手册页后,有一点我完全不明白。

使用 __autoload() 和 require_once 之间有什么明显的区别?

因为它看起来自动加载是执行所需包含的新时尚方式,但是对我来说,最好使用require_once。因此,必须将 __autoload 定义到所有 php 文件中,这意味着将其代码写在那里,如果我将 ALL 我的 includes/require_once/...等放入一个文件中,我们将其称为 ma​​in_header .php 那么我需要在我的 Web 应用程序文件中做的就是编写一行代码:

<?php require_once('main_header.php');  ?> 

我哪里错了吗?

最佳答案

我可以看到自动加载有两件事(不一定是 __autoload ;更喜欢更现代的 spl_autoload_register 相反):

  1. 您不需要显式地包含这些类。当然,您可以像您的示例一样制作一个 main_header.php,但随后下一项生效。
  2. 如果您只打算使用其中的 10 个类,则不必加载 100 个类。

还值得指出的是,当反序列化尚未定义的类的对象时也会触发自动加载,这使事情变得更加实用。当然unserialize中还有另一个钩子(Hook)为此(配置设置 unserialize_callback_func),所以自动加载在技术上不是必需的。不过肯定更好。

关于php - __autoload 与包含家庭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6437134/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com