私は配列を持っています。例は..
Array
(
[cats] => Resource id #54
[listings] => Array
(
[home-and-garden] => Resource id #55
[professional-services] => Resource id #56
[community] => Resource id #57
[education-and-instruction] => Resource id #58
[automotive] => Resource id #59
[legal-and-financial] => Resource id #60
)
)
さて、cats
キーはMySQLデータセットです。これをループしても問題はありませんmysql_fetch_array
。ただし、そのループ内に入ると、次のようなリスト配列の特定のキーで別のループを実行しようとします。home-and-garden
リスト配列の下のすべてのキーは動的であるため、キー名を持つ変数を渡す必要がありますが、うまくいきません。 t ループに入ります。
以下は私のコードの例です..
protected function makePopularCategoryHTML($sql) {
while (list($main_category,$slug,$image)=mysql_fetch_array($sql['cats'])) {
// Make lowercase category slug
$main_category_slug = URLSafe($main_category);
while (list($category,$name,$tag1,$newurl)=mysql_fetch_array($sql['listings'][$main_category_slug])) {
// It won't enter this loop
}
}
}
編集:例のダンプ$sql['listings'][$main_category_slug]
は以下のとおりです。
resource(55) of type (mysql result)
のダンプ$sql['listings']
は次のとおりです。
array(6) {
["professional-services"]=>
resource(55) of type (mysql result)
["home-and-garden"]=>
resource(56) of type (mysql result)
["community"]=>
resource(57) of type (mysql result)
["food-and-dining"]=>
resource(58) of type (mysql result)
["real-estate"]=>
resource(59) of type (mysql result)
["business-to-business"]=>
resource(60) of type (mysql result)
}
それらはすべて有効なリソースであると思われ、キー名が正しいことを確認しました。