首页 > 解决方案 > Laravel 遇到的非数字值

问题描述

我希望你很好。我正在尝试显示一条带有我已经完成的搜索值的消息(我有 3 个文件进行搜索:关键字、文章类型和日期)。我的控制器中有一个功能:

    public function page_liste_resultat_recherche_article(Request $request)
    { 
      $recherche_effectuer = request()->query('rechercher');
      $type_article_recherche = request()->query('type_article');
      $date_rechercher = request()->query('date');
      $article_rechercher = Article::withTrashed()->when($recherche_effectuer, function($query, $recherche_effectuer){
        return $query->where('titre', 'like', "%{$recherche_effectuer}%");
      })
        ->when($type_article_recherche, function($query, $type_article_recherche){
           return $query->where('type_article_id', 'like', "%{$type_article_recherche}%");
      }) 
        ->when($date_rechercher, function($query, $date_rechercher){
           return $query->where('created_at', 'like', "%{$date_rechercher}%");
      })->orderBy('created_at', 'desc')->paginate(5);

    if((empty($recherche_effectuer)) && (empty($type_article_recherche)) && ($date_rechercher)){
        $message_resultat_recherche = "Résultat pour la date " + ($date_rechercher) + " :";

    } elseif((empty($recherche_effectuer)) && (!empty($type_article_recherche)) && (empty($date_rechercher))){
         $message_resultat_recherche = "Résultat pour le type d'article " + ($type_article_recherche) + " :";

    } elseif((empty($recherche_effectuer)) && (!empty($type_article_recherche)) && (!empty($date_rechercher))){
        $message_resultat_recherche = "Résultat pour la date " + ($date_rechercher) + " et le type d'article " + ($type_article_recherche) + " :";

    } elseif((!empty($recherche_effectuer)) && (empty($type_article_recherche)) && (empty($date_rechercher))){
        $message_resultat_recherche = "Résultat pour le mot cle " + ($recherche_effectuer) + " :";

    } elseif((!empty($recherche_effectuer)) && (empty($type_article_recherche)) && (!empty($date_rechercher))){
        $message_resultat_recherche = "Résultat pour le(s) mot(s) clé(s) " + ($recherche_effectuer) + " et pour la date " + ($date_rechercher) + " :";

    } elseif((!empty($recherche_effectuer)) && (!empty($type_article_recherche)) && (empty($date_rechercher))){
        $message_resultat_recherche =  "Résultat pour le(s) mot(s) clé(s) " + ($recherche_effectuer) + "et le type d'article " + ($type_article_recherche) + " :";

    } elseif((!empty($recherche_effectuer)) && (!empty($type_article_recherche)) && (!empty($date_rechercher))){
        $message_resultat_recherche =  "Résultat pour le(s) mot(s) clé(s) " +($recherche_effectue) + ", le type d'article " + ($type_article_recherche) + " et la date " + ($date_rechercher) + " :";
    } else {
        $message_resultat_recherche = "Vous n'avez saisi aucune donnée";
    }
                
    return view('admin/article/admin_liste_resultat_recherche', [
        'articles' => $article_rechercher,
        'resultat' => $message_resultat_recherche
    ]);
}

在我看来,我展示了这个:

<div class="row d-flex justify-content-center">
  <div class="col-md-12">
     <p class="text-center mt-3">{{$resultat}}</p>
  </div>
</div>

我有这个错误:

A non-numeric value encountered

请问有人看到我哪里错了吗?

亲切地

标签: laravellaravel-5

解决方案


警告:遇到非数字值

正如@apokryfos 在评论中所说,不要用'+'符号连接字符串。改为使用'.'

IE

// Use...
echo "Hello". " world! ". 508;

// Instead of...
echo "Hello"+ " world! "+ 508;

推荐阅读