不更新空帖子的最佳方式


Best way to not update empty posts

  • 你好,

    我正在使用codeigniter,该页面以防更新有关的信息用户。如果用户转到页面并编辑值如果为"或为空(相同(,则不进行更新,让查询通过它,我有一个逻辑,但它有点难看,需要很多时间。

       $nome = "'nome' =>" . $this->input->post('nome') . "'";
       $sobrenome = "'sobrenome' =>" . $this->input->post('sobrenome') . "'";
       if($nome != ""){
           $nome = "'nome' =>" . $this->input->post('nome') . "'";
           }else{
           $nome = "";
       }
       if($sobrenome != ""){
            $sobrenome = "'sobrenome' =>" . $this->input->post('sobrenome') . "'";
       }else{
           $sobrenome = "";
       } $data = array($nome, $sobrenome);
    

问题是,我有很多字段:(

如果有人知道一个聪明的方法或更好的方法,请我想知道

创建一个数组并使用三元运算符

$data = array(
         'nome' => strlen($this->input->post('nome'))>0 ? $this->input->post('nome') : NULL,
         'sobrenome' => strlen($this->input->post('sobrenome'))>0 ? $this->input->post('sobrenome') : NULL,
        );

如果要从阵列中删除NULL值,则添加$data = array_filter($data);

您不需要为$nome$sobrenome定义单独的变量。您可以使用$data['nome']$data['sobrenome']获得这些值。