我正在扩展 MongoCollection 类并收到此消息。
Declaration of Db\Mongo\Collection::save() should be compatible with that of MongoCollection::save()
我知道这通常是婴儿车声明未匹配。
Php.net 说婴儿车是:
public mixed save ( array|object $a [, array $options = array() ] )
我已尝试以下所有方法来解决此问题:
public function save(array &$a, array $options = array())
public function save($a, array $options = array())
public function save(&$a, array $options = array())
public function save($a, $options = array())
public function save($a = array(), $options = array())
还有许多其他人,我似乎无法匹配该类型。
有人对如何解决此错误有任何想法吗?如何将婴儿车声明为数组|对象?
最佳答案
我收到了这个错误
Strict Standards: Declaration of MyMongoCollection::save() should be compatible with MongoCollection::save($array_of_fields_OR_object, array $options = NULL)
所以我尝试了:
class MyMongoCollection extends MongoCollection {
public function save($arr_obj, array $options= null) {
}
}
它有效。
关于php - Class::save() 的声明应该与 Class::save() 的声明兼容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22387803/