这是在耍我..。我使用的确切例子是:
http://php.net/manual/en/mongodate.todatetime.php
但我得到了:
PHP致命错误:调用未定义方法MongoDate::toDateTime()
<?php
$d = new MongoDate(strtotime("2014-11-18 11:01:25"));
var_dump($d);
var_dump( $d->toDateTime() );
?>我得到的确切结果是:
object(MongoDate)#1 (2) {
["sec"]=>
int(1416330085)
["usec"]=>
int(0)
}
PHP Fatal error: Call to undefined method MongoDate::toDateTime() in /xxx/testmongodate.php on line 5PHP版本:
$ php -v
PHP 5.5.9-1ubuntu4.9 (cli) (built: Apr 17 2015 11:44:57)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend TechnologiesPHP配置:
$ php -i | grep mongo
/etc/php5/cli/conf.d/20-mongo.ini,
mongo
mongo.allow_empty_keys => 0 => 0
mongo.chunk_size => 262144 => 262144
mongo.cmd => $ => $
mongo.default_host => localhost => localhost
mongo.default_port => 27017 => 27017
mongo.is_master_interval => 15 => 15
mongo.long_as_object => 0 => 0
mongo.native_long => 0 => 0
mongo.ping_interval => 5 => 5我一直在成功地使用这个安装来插入和读取一个实际的mongo数据库,但是现在我尝试在从mongo中读取MongoDate对象时使用它们,尝试将它们格式化为插入到另一个数据库中.所以我想用这个方法..。但似乎没被找到..。??
$ uname -a
Linux server1 3.13.0-52-generic #86-Ubuntu SMP Mon May 4 04:32:59 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux发布于 2017-05-18 17:52:25
对于任何迟来这个问题的人(像我一样),可能的问题是PHP使用的是不同的Mongo驱动程序。当前有2,下面的代码用于遗留驱动程序。遗留驱动程序的解决方案是使用PHP函数从Mongo获取日期:
<?php
$d = new MongoDate(strtotime("2014-11-18 11:01:25"));
$newdate = date('Y-m-d H:m:s',$d->sec);
var_dump( $newdate );
?>https://stackoverflow.com/questions/30469320
复制相似问题