Php 如果记录没有';无法匹配已删除的数据

Php 如果记录没有';无法匹配已删除的数据,php,laravel,Php,Laravel,我对从数据库中删除数据没有什么问题。我做一些刮擦。并将数据保存到数据库中。我刮同一个网站几次更新。而这些数据都是以前收集的。不再存在于网站中。然后我想从数据库中删除该数据的id foreach($planNames as $k => $names) { $database = []; $database = [ "plan_id" => $insertedPlaceId, "plan_name" => $names,

我对从数据库中删除数据没有什么问题。我做一些刮擦。并将数据保存到数据库中。我刮同一个网站几次更新。而这些数据都是以前收集的。不再存在于网站中。然后我想从数据库中删除该数据的id

foreach($planNames as $k => $names)
{
    $database = [];
    $database = [
        "plan_id" => $insertedPlaceId,
        "plan_name" => $names,
        "plan_price" => $planPrice[$k],
        "people" => $people[$k]
    ];

    if ($plan = Plan::where("plan_name", "=", $names)->first()) {
        if ($plan->plan_name != $database["plan_name"]) {
            $plan->id->delete();
            $this->line("Plan deleted.");
        }
    } else {
        Plan::insertGetId($database);
        $this->line("Plans inserted.");
    }
}
我认为这部分工作不太正常
$plan->id->delete()

$plan->id->delete()
不是正确的方法,您可以使用以下方法之一:

要删除模型,请对模型实例调用delete方法:

$plan = App\Plan::find(1);

$plan->delete();
按键删除现有模型

App\Plan::destroy(1);           -- Using id
App\Plan::destroy(1, 2, 3);     -- Using comma separated string
App\Plan::destroy([1, 2, 3]);   -- Using array
按查询删除模型

$deletedRows = App\Plan::where('active', 0)->delete();
参考:

如果您使用的是SoftDelete,请参阅

$plan->id->delete()
不是正确的方法,您可以使用以下方法之一:

要删除模型,请对模型实例调用delete方法:

$plan = App\Plan::find(1);

$plan->delete();
按键删除现有模型

App\Plan::destroy(1);           -- Using id
App\Plan::destroy(1, 2, 3);     -- Using comma separated string
App\Plan::destroy([1, 2, 3]);   -- Using array
按查询删除模型

$deletedRows = App\Plan::where('active', 0)->delete();
参考:


如果您使用的是SoftDelete,请参阅

@mr.hello,如果它确实解决了您的问题,请不要忘记向上投票:)@mr.hello,如果它确实解决了您的问题,请不要忘记向上投票:)