2016-04-04 5 views
-1

私はmysqlテーブルから製品のリストを取得しています。私はmysqlを通してこれを行うことができると知っていますが、それより少し複雑なので、PHP配列は私の唯一の選択肢です!ネストされた配列の値を+1します。elseを1に設定しました。

mysqlのクエリは、配列$製品に設定されますが、このような設定である:

$myProducts = array(); 
if(is_array($products){ 
    foreach($products as $product){ 
     if(isset($myProducts['location']['product_type'])){ 
      $myProducts['location']['product_type'] ++; 
     }else{ 
      $myProducts['location']['product_type'] = 1; 
     } 
    } 
} 

Index   product_type  location 
0   Chevy    South Bend 
1   Ford    Aurora 
2   Chevy    South Bend 
3   Chevy    Aurora 

私は、セットアップに私は、ディスプレイに使用する配列を、以下のコードを持っていますこの方法は表示に関しては機能しますが、次のようなエラーが発生します。

PHP Notice: Undefined index: South Bend 

I同じ結果を警告として次のことを試みました。

if(is_array($myProducts['location']) && isset($myProducts['location']['product_type'])){ 

} 

製品の種類は、その場所のために設定されている場合、ステートメントのチェックが参照する場合のステートメントは、その内それから場所が配列であるかどうかを確認してする場合、私は入れ子にする必要はありません方法はありますか?

+0

を停止するには、foreachの最初の行の後に追加しますが、あなたは、所望の出力を表示することができますか? –

+0

正確に何を数えたいですか?コードごとに '$ products'の数を数えます。 'count($ products)'を使って行えますか?あなたは正確に何をしたいのか説明できますか? –

答えて

0

配列を作成し、通知に

if(!isset($myProducts['location']['product_type'])){$myProducts['location']['product_type']=0} 
+0

ロケーションの警告が定義済みのインデックスではないのはisset($ myProducts ['location'] ['product_type'])です。私は親子をチェックする必要なしにネストされた配列がセットされているかどうか確認するためにいくつかの控えめな方法があるかどうかはわかりませんでした – Dom

+0

私はそれが設定されていないかどうかを確認し、 –

関連する問題