PHP通过像这样的多元数组循环

jme*_*zes 0 php arrays

好的,所以我已经尝试了将近2个小时,而且我似乎无处可去.

这是我正在尝试的数组和循环:

$categories = array (
    "US01" => array("name" => "Audio & Video", "alias" => "audio-video"),
    "US02" => array("name" => "Books", "alias" => "books"),
    "US03" => array("name" => "Toys", "alias" => "toys"),
    "US04" => array("name" => "Computer Hardware", "alias" => "comp-hard"),
);

$keys = array_keys($categories);
$c = count($keys);

for( $i = 0; $i < $c; $i++ ) {
    echo( $categories[$i] );
    echo '<br>';
}
Run Code Online (Sandbox Code Playgroud)

我在世界上如何获得这样的结果:

US01 Audio & Video
US02 Books
US03 Toys
US04 Computer Hardware
Run Code Online (Sandbox Code Playgroud)

我想找到钥匙和名字.我可以打印钥匙,但是如何获得内部的功能呢?

ker*_*ero 5

使用a foreach会使这更简单:

foreach ($categories as $key=>$value) {
    echo $key." ".$value["name"]."<br>";

    //alternatively
    printf("%s %s<br>", $key, $value["name"]);
}
Run Code Online (Sandbox Code Playgroud)

如果你坚持使用for,它应该这样工作:

$keys = array_keys($categories);
$c = count($keys);

for( $i = 0; $i < $c; $i++ ) {
    echo $keys[$i]." ".$categories[$keys[$i]]["name"]."<br>";
}
Run Code Online (Sandbox Code Playgroud)

您不能使用,$categories[$i]因为键不是数字而是设置$keys[$i]