Php 请注意数组到字符串的转换,但代码工作正常

Php 请注意数组到字符串的转换,但代码工作正常,php,Php,我使用以下脚本从表中删除选定的项 <?php class deleteNews extends Generic { private $error; private $news_id_delete; function __construct() { if (empty($_POST['deleteCheck'])) { echo '<div c

我使用以下脚本从表中删除选定的项

<?php 
    class deleteNews extends Generic 
    {
        private $error;
        private $news_id_delete;

        function __construct() 
        {
            if (empty($_POST['deleteCheck'])) {
                echo '<div class="alert alert-danger" role="alert"> <strong>Erro!</strong> Nenhuma notícia foi selecionada! </div>';
            }

            if(isset($_POST['deleteCheck'])) {
                $this->news_id_delete = parent::secure($_POST['deleteCheck']);

                $params = array(
                    ':news_id_delete'       => $this->news_id_delete,
                );

                foreach($this->news_id_delete as $delete) {
                    $sql = "DELETE FROM `login_news` WHERE `news_id` = $delete;";
                    parent::query($sql, $params);
                }

                echo '<div class="alert alert-success" role="alert"> <strong>Sucesso!</strong> Sua notícia foi publicada! </div>';

           }
       }
    }

    if (isset($_POST['deleteBtn'])) {   
        $addUser = new deleteNews();                
    }    
?>

它工作正常,问题是每次执行时,它都会返回以下通知:

注意:数组到字符串的转换


如何删除此通知?

从中删除
$params

parent::query($sql, $params);
因为我认为您的查询已经完成,并且不需要在sql语句中插入任何额外的参数,因为要删除的id已经在查询中传递了

$sql = "DELETE FROM `login_news` WHERE `news_id` = $delete;"

另外,
$params
是一个数组数组,这就是为什么您从查询函数中得到此错误的原因

这不是一个坏习惯吗?谢谢!!成功了,我会在10分钟内接受你的回答。