为什么我不能使用这样的代码?
<?php
class NoConstructor {
}
class ChildWithConstructor extends NoConstructor {
public function __construct() {
parent::__construct();
// do something
}
}
$foo = new ChildWithConstructor();
// **Fatal error: Cannot call constructor in file.php on line 8**
Run Code Online (Sandbox Code Playgroud)
例如.Java类有默认值,没有args构造函数.即使没有明确定义,也可以调用它.
当我们从父类中删除没有args构造函数时,PHP行为会导致麻烦,例如.当我们认为不再需要它时.
有谁知道为什么PHP创建者这样做了?
我正在开发一个在开发环境中没有生产数据库副本的项目.
有时我们遇到数据库迁移问题 - 它们传递开发数据库但在生产/测试中失败.
这通常是因为Dev environent数据是从使用最新实体的Fixtures加载的 - 正确填充所有表.
有没有简单的方法来确保Doctrine Migration(s)将在生产中通过?
您是否已经/知道如何编写自动测试,以确保在不下载生产/测试数据库并手动运行迁移的情况下正确迁移数据?
我想避免将生产/测试数据库下载到开发机器,因此我可以检查迁移,因为数据库包含私有数据,而且它可能非常大.