php - 为什么不能在类定义中包含 require* 语句?

标签 php oop class-design

Possibly Related:
Why don't PHP attributes allow functions?

如果以前有人问过这个问题,请原谅我,但是为什么你不能有类似下面的东西:

class foo {

 require_once 'defines.php';

 private $_server = DB_SERVER;
 private $_username = DB_USERNAME;
 private $_password = DB_PASSWORD;
 private $_database = DB_NAME;
 public  $debug = false;
 public $_conn;

 function __construct() {                          
    $connection = @mysqli_connect($this->_server, $this->_username, $this->_password, $this->_database);
 }

 ...

}

干杯,

编辑:希望找出为什么存在这种行为以及为什么不可能。 投票怎么关闭?

EDIT2 : 也想重新打开这个

最佳答案

在将类添加到 PHP 之前,可以在函数范围和全局范围内requireinclude 文件。

这只是一个猜测——我不确定除了让语言设计者来告诉我们他们的故事之外我们还能做些什么——但我想人们相信将这个功能添加到通过添加类发明的“新范围”,特别是考虑到为支持它而添加到后端的复杂性。

还不完全清楚 required 文件中的任何声明的作用域规则是什么。

总而言之,我认为您问错了问题。而不是“为什么不支持这个?”这更像是“为什么要支持它?”的情况。

我希望这对您有所帮助。

关于php - 为什么不能在类定义中包含 require* 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5901088/

相关文章:

c# - 从哪个类调用 DAL?

php - 我可以使用 PhoneGap jQuery 进行 AJAX 调用吗?

php - 使用 PHP 如何从 mysql 检索多个日期范围并作为日期数组返回

java - 为随机发生器选择合适的类名称

Java继承概念与不明确的参数

c++ - 如何将 C++ 类/结构转换为原始/不同类型/类/结构?

php - 编辑模板 Bootstrap 以在行中显示 4 个产品图像

php - php 中 undefined index

java - 包装器类型真的是引用类型吗

javascript - 设计在 DOM 中表示 UI 对象的 JavaScript 类的最佳实践是什么?