Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.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
Phpactiverecord,正在更新对象的NOW()_Php_Mysql_Phpactiverecord - Fatal编程技术网

Phpactiverecord,正在更新对象的NOW()

Phpactiverecord,正在更新对象的NOW(),php,mysql,phpactiverecord,Php,Mysql,Phpactiverecord,我一直在尝试将phpactiverecord用于一个项目。。我很难确定是否可以通过mysql函数的任何本机更新方法来传递mysql函数。我有点惊讶,我在别的地方找不到这个问题的答案 编辑: 使用该框架一年后,一个简单的答案是: $object->date='now'虽然我可能会偏离基准,但我认为您不会直接将sql传递到活动记录中。然而,我对active record的理解(通过使用Yii的active record版本)是active record是建立在CDB连接上的,从类CActiveRec

我一直在尝试将phpactiverecord用于一个项目。。我很难确定是否可以通过mysql函数的任何本机更新方法来传递mysql函数。我有点惊讶,我在别的地方找不到这个问题的答案

编辑: 使用该框架一年后,一个简单的答案是:
$object->date='now'

虽然我可能会偏离基准,但我认为您不会直接将sql传递到活动记录中。然而,我对active record的理解(通过使用Yii的active record版本)是active record是建立在CDB连接上的,从类CActiveRecord:

/** *@var CDbConnection所有活动记录类的默认数据库连接。 *默认情况下,这是“db”应用程序组件。 *@see getDbConnection */

在Yii中,要访问此文件,您可以使用以下代码:

$sql = 'select * from mytable';
$rows = Yii::app()->db->createCommand($sql)->queryAll();

如果不使用Yii,则必须查找如何访问db对象

如果我理解正确,您希望调用
NOW()
来更新时间戳字段。有几种选择

  • 使用“更新位置”字段:

    具有名为created_at和updated_at的字段的模型将在模型创建和模型更新时自动更新这些字段

  • 对回调进行某种更新:

  • 只需使用php函数手动更新即可

    $obj->yourDateField = new \DateTime(); 
    

那么你尝试了什么?你看到了什么错误?@dnagirl更重要的是,没有明显的界面来说明$object->last_edited='NOW()',$object->save()。。因为在这种情况下,它将被放入一份准备好的声明中。我猜我只需要创建一个单独的查询,或者只需将数据库中的字段修改为时间戳……这就接近了我的解决方案。。。因为phpactiverecord使用php的date()函数来获取日期,所以我只是将值设置为该函数。它只是让我担心php和mysql是否总是使用同一台时间服务器。