Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 覆盖MongoCollection::update时出现问题_Php_Oop_Mongodb_Inheritance_Overriding - Fatal编程技术网

Php 覆盖MongoCollection::update时出现问题

Php 覆盖MongoCollection::update时出现问题,php,oop,mongodb,inheritance,overriding,Php,Oop,Mongodb,Inheritance,Overriding,我正在运行以下版本的PHP:PHP5.3.15和Suhosin补丁(cli)(构建日期:2012年8月28日18:19:13) 我有一个从\MongoGridFS继承的类: class PdfGrid extends \MongoGridFS { // ... public function update( array $criteria , array $new_object, array $options = array()){ $options['safe'] = true;

我正在运行以下版本的PHP:PHP5.3.15和Suhosin补丁(cli)(构建日期:2012年8月28日18:19:13)

我有一个从\MongoGridFS继承的类:

class PdfGrid extends \MongoGridFS {
// ...

public function update( array $criteria , array $new_object, array $options = array()){
    $options['safe'] = true;
    if ( isset($criteria['_id']) && ! $criteria['_id'] instanceof \MongoId){
        $criteria['_id'] = new \MongoId($criteria['_id']);
    }
    return parent::update($criteria, $new_object, $options);
}
} 
每当运行使用此类的脚本时,都会出现以下错误:

PHP严格标准:第68行/Users/js/dev/YsInv/lib/YS/MongoCollection/PdfGrid.PHP中的YS\MongoCollection\PdfGrid::update()声明应与MongoCollection::update()声明兼容

但遗憾的是,该定义与php.net上显示的\MongoCollection::update完全匹配:

public bool | array MongoCollection::update(array$criteria,array$new_object[,array$options=array())


通常,最好是包装这些对象,而不是扩展它们。不要相信文档。请查看本地托管的MongoCollection::update()定义。文档可能已过时。