2017-05-19 4 views
2

私のデータベースからいくつかの値を選択するためにPDOを使用しています。
my $ teachArrayを繰り返し実行するたびに、選択した値をmy $ language_id変数に格納します。
しかし、私はまた私の意図ではない空の配列をいくつか格納しています。PHP変数から空の配列を削除します

PHP変数の中の空の配列を除外したり、取り除くことができるかどうかを知りたいと思います。

ここに私の簡単な質問があります。

$sqlFindId = "SELECT language_id 
       FROM language_skill 
       WHERE person_id = :person_id AND language_learning = :language_learning AND language_id = :language_id"; 

      foreach ($teachArray as $dataTeach) 
      { 
       $query = $handler->prepare($sqlFindUser); 
       $query->bindValue(':person_id', $_SESSION['person_id']); 
       $query->bindValue(':language_learning', 1); 
       $query->bindValue(':language_id', $dataTeach); 
       $query->execute(); 
       $language_id = $query->fetchAll(PDO::FETCH_ASSOC); 
       print_r($language_id); 
      } 

私の可変内容を見るために私の質問にprint_rを使用します。

ここに私のprint_rの結果があります。空の最初と最後の配列を取り除きたい。これらの空の配列は、私のprint_rのどこにでも置くことができます。

Array () Array ([0] => Array ([language_id] => 13)) Array () 

私は

$array= array_filter(array_map('array_filter', $language_id)); 

を使用して試してみましたが、それは

答えて

0
  foreach ($teachArray as $dataTeach) 
     { 
      $query = $handler->prepare($sqlFindUser); 
      $query->bindValue(':person_id', $_SESSION['person_id']); 
      $query->bindValue(':language_learning', 1); 
      $query->bindValue(':language_id', $dataTeach); 
      $query->execute(); 
      $language_id = $query->fetchAll(PDO::FETCH_ASSOC); 
      if (count($language_id) != 0) { 
       print_r($language_id); 
      } 
     } 

同じ結果を与えるが、それができますすることができます:)

+0

うわー、それはおかげで作品を願っています! – Viteazul

+0

NoEmptyArray型の種類は?多次元か、それとも規則的な配列ですか? – Ukasyah

+0

@Ukasyah Viteazulにあなたのメッセージを通知するためにアットマークを使用する必要があります。最初の5分間はコメントを変更できます。あなたの前のコメントに '@ Vitezaul'を追加するだけです。 – mickmackusa

関連する問題