gpt4 book ai didi

php - 在 PHP 中扩展父类是否需要包含该类的文件?

转载 作者:可可西里 更新时间:2023-11-01 12:46:17 25 4
gpt4 key购买 nike

我是否应该包含/require_once 我在 PHP 中扩展的父类?

例如我有一个名为 Shapes 的类

class Shapes {

}

然后我创建了一个名为

的子类
require_once('shapes.php');

class Circle extends Shapes {

}

扩展时是否需要父类?或者应该只使用将子类扩展到它的父类,即使它们在同一个文件夹中?

最佳答案

您需要做一些事情,以便让 PHP 在处理子类之前看到您的基类定义,否则将发生 fatal error 。

This something 可以是基类文件的手动require_once,或者autoloading (还有其他自动加载选项,但 spl_autoload_register 是您应该使用的选项)。

使用哪种方法取决于范围:在编写小型测试项目时,设置自动加载可能有点矫枉过正。但是随着代码库变得越来越大,自动加载变得更有吸引力,因为:

  • 它可以隐藏复杂的源文件解析逻辑(例如,如果您有一个可配置的基类目录;还有更高级的场景)
  • 它可以增量配置:您可以使用多个作为链运行的自动加载器,应用程序的每个独立模块都可以注册其独立的自动加载器,与所有其他模块和平共存

关于php - 在 PHP 中扩展父类是否需要包含该类的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11222809/

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