PHP 将对象加载到一个文件中以便于访问


PHP Loading objects in one file for easy access

新网站。有一个简短的问题。

将对象加载到一个文件中以在需要时调用是安全的,例如:

对象.php

<?php
require 'autoload.php';
//create global objects
$obj = new Object();
$obj2 = new User();
$obj = new Bus();
?>

标头.php

<?php
require 'objects.php';
echo 'Hello ' . $obj2->getName();
?>

提前谢谢。

仅在需要时实例化对象会更智能。创建对象需要一些时间和一些内存。您还希望能够在以后回来更改某些内容时准确知道在任何给定执行点正在使用哪些对象。

如果你实例化了一堆不需要的对象,你不可避免地会发现自己想要进行更改,但不得不花时间弄清楚你是否已经使用了 $obj 2,或者在第 350 行开始使用它是否安全。如果不更描述性地命名对象,您还会发现您将重用变量名称,当您的对象没有按预期方式运行时,这将导致混淆。例如,在代码中,$obj 是总线,而不是对象。如果你期待一个对象,你会感到困惑。

如果你不需要这个对象,那么你不应该加载它。但是,我猜您正在尝试创建一些全局信息存储,我将假设您需要这种方式。 话虽如此,最好使用静态对象,这样您就不会遇到范围问题。

静态对象通常不会被实例化,只会像这样使用:

User::setName('Bob');
echo 'Hello ' . User::getName();