我有一个PHP命令行脚本,它将作业启动到作业服务器,作业名称是一个参数.作业名称是命名空间,例如Foo:Bar_Baz_JobName.有没有办法实现自动完成,比如如何键入文件名的前几个字母,然后按tab bash为你完成文件名.我知道它可以完成,因为tab-completion在ubuntu上使用apt-get工作,我只是不知道它是否可以在PHP中完成.
有没有办法可以使用PHP的内置SoapClient类为请求添加soap附件?看起来它不支持,但也许我可以手动构建mime边界?我知道PEAR SOAP库支持它们,但是为了使用它我必须重写我的整个库来使用它.
我有一堆带有date_created和date_modified字段的实体,我试图让这些字段在插入或更新时自动设置.date_created仅在insert处设置,但date_modified在insert或update处设置.
我在我的实体类中有一个带有@PreUpdate注释的方法,但它似乎只在实体更新时被调用.插入新实体时不会调用它.文档说明了关于preUpdate事件:
"preUpdate事件发生在对实体数据的数据库更新操作之前."
这是正确的行为吗?如果是这样,在更新或插入之前调用方法的最佳方法是什么?目前,如果我用@PreUpdate和@PrePersist标记方法,那么它可以工作,但我不确定这是否是最佳的:
/**
* @PreUpdate
* @PrePersist
*/
public function beforeSave()
{
if (!$this->getCreatedAt()) {
$this->setCreatedAt(new \DateTime());
}
$this->setModifiedAt(new \DateTime());
}
Run Code Online (Sandbox Code Playgroud)