[英]Loop through a two-dimensional array with actions on change of a value in a column
[英]Loop through a two-dimensional array
我有一個看起來像這樣的數組:
$array = array(
array(
"http://google.com",
"Google"
),
array(
"http://yahoo.com",
"Yahoo"
)
);
循環遍歷它的最簡單方法是什么。 就像是:
foreach ($array as $arr) {
// help
}
編輯:我如何定位鍵,例如,我想做:
foreach ($array as $arr) {
echo '<a href" $key1 ">';
echo ' $key2 </a>';
}
使用嵌套的foreach()
因為它是二維數組。 示例在這里
foreach($array as $key=>$val){
// Here $val is also array like ["Hello World 1 A","Hello World 1 B"], and so on
// And $key is index of $array array (ie,. 0, 1, ....)
foreach($val as $k=>$v){
// $v is string. "Hello World 1 A", "Hello World 1 B", ......
// And $k is $val array index (0, 1, ....)
echo $v . '<br />';
}
}
首先foreach()
$val
也是一個數組。 所以使用了嵌套的foreach()
。 在第二個foreach()
$v
是字符串。
根據您的需求更新
foreach($array as $val){
echo '<a href="'.$val[0].'">'.$val[1].'</a>';
}
為了回顯這些位,您必須在每個數組中選擇它們的索引 -
foreach($array as $arr){
echo '<a href="'.$arr[0].'">'.$arr[1].'</a>';
}
這是一個例子。
遍歷它的最簡單方法是:
foreach ($array as $arr) {
foreach ($arr as $index=>$value) {
echo $value;
}
}
編輯:
如果你知道你的數組總是只有兩個索引,那么你可以試試這個:
foreach ($array as $arr) {
echo "<a href='$arr[0]'>$arr[1]</a>";
}
首先像這樣修改你的變量:
$array = array(
array("url"=>"http://google.com",
"name"=>"Google"
),
array("url"=>"http://yahoo.com",
"name"=>"Yahoo"
));
然后你可以像這樣循環:
foreach ($array as $value)
{
echo '<a href='.$value["url"].'>'.$value["name"].'</a>'
}
循環的方法是,
foreach($array as $arr)
foreach($arr as $string) {
//perform any action using $string
}
使用第一個不帶{ }
foreach 循環以實現最簡單的使用。
這可能是根據您的請求使用嵌套數組的最簡單方法。
對於您編輯的問題。
使用密鑰的數組聲明錯誤。
$array = array(
"http://google.com" => "Google",
"http://yahoo.com" => "Yahoo" );
然后,使用以下內容。
foreach ($array as $key => $value)
echo "<a href='{$key}'>{$value}</a>";
這不會降低服務器的性能。
在現代版本的 php 中,您可以為您選擇的變量分配(解構)子數組值。
一個很好的教程: https : //stitcher.io/blog/array-destructuring-with-list-in-php
代碼:(演示)
$array = [
["http://example1.com", "Example 1"],
["http://example2.com", "Example 2"]
];
foreach ($array as [$key1, $key2]) {
echo "<a href=\"$key1\">$key2</a>\n";
}
輸出:
<a href="http://example1.com">Example 1</a>
<a href="http://example2.com">Example 2</a>
老實說,我可能會分別命名變量$url
和$text
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.