Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/248.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 使用删除方法创建事务。。。失败_Php_Idiorm - Fatal编程技术网

Php 使用删除方法创建事务。。。失败

Php 使用删除方法创建事务。。。失败,php,idiorm,Php,Idiorm,我想用以下代码创建事务查询: // Start a transaction ORM::get_db()->beginTransaction(); //this work $prs = Model::factory('PenyediaJasaORM')->find_one(77); $prs->delete(); //yes this not work, i know $klas = Model::factory('P

我想用以下代码创建事务查询:

    // Start a transaction
    ORM::get_db()->beginTransaction();

    //this work
    $prs = Model::factory('PenyediaJasaORM')->find_one(77);
    $prs->delete();

    //yes this not work, i know 
    $klas = Model::factory('PenyediaJasaKlasifikasiORM')->find_one(100);
    $klas->delete();


    // Commit a transaction
    ORM::get_db()->commit();
是的,在$prs查询中有效。我让$KLA不起作用,看不到结果。 但为什么我得到了错误“致命错误:在布尔值中调用成员函数delete()

我认为适当的错误应该是FALSE,而不是致命错误,因为这些查询是事务

如果我不完全理解使用多重删除查询的事务,请给我建议

感谢您的查询:

Model::factory('PenyediaJasaKlasifikasiORM')->find_one(100);
如果未找到任何内容,则返回false。您应该检查$klas变量是否为false,调用$klas->delete()


谢谢你,但不是预期的答案。。。这个问题特别是关于白痴。。。我不明白为什么要用如果。。。如果我们讨论代码,为什么idiorm不在delete方法中使用if,因为如果查询返回false,它就不是idiorm对象。您可能会争辩说,当idiorm没有找到任何东西时,它应该返回一个空的idiorm对象,当您调用delete时,它会告诉您它是空的,但框架就是这样工作的。您应该在idiorm的github页面中打开一个问题,提出建议
if($klas) {
    $klas->delete();
}