Php 在二维数组中循环
我有一个如下所示的数组:Php 在二维数组中循环,php,arrays,loops,foreach,Php,Arrays,Loops,Foreach,我有一个如下所示的数组: $array = array( array( "http://google.com", "Google" ), array( "http://yahoo.com", "Yahoo" ) ); $array = array( array("url"=>"http://google.com", "name"=>"
$array = array(
array(
"http://google.com",
"Google"
),
array(
"http://yahoo.com",
"Yahoo"
)
);
$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) {
// help
}
编辑:如何定位关键点,例如,我要执行以下操作:
foreach ($array as $arr) {
echo '<a href" $key1 ">';
echo ' $key2 </a>';
}
foreach($array as$arr){
回声';
}
使用嵌套的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 ($array as $arr) {
foreach ($arr as $index=>$value) {
echo $value;
}
}
编辑:
如果知道数组始终只有两个索引,则可以尝试以下方法:
foreach ($array as $arr) {
echo "<a href='$arr[0]'>$arr[1]</a>";
}
foreach($array as$arr){
回声“;
}
循环的方式是
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>";
foreach($key=>$value的数组)
回声“;
这不会降低服务器的性能。为了回显位,您必须在每个数组中选择它们的索引-
foreach($array as $arr){
echo '<a href="'.$arr[0].'">'.$arr[1].'</a>';
}
foreach($array as$arr){
回声';
}
下面是一个示例。首先修改变量,如下所示:
$array = array(
array(
"http://google.com",
"Google"
),
array(
"http://yahoo.com",
"Yahoo"
)
);
$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>'
}
然后你可以这样循环:
$array = array(
array(
"http://google.com",
"Google"
),
array(
"http://yahoo.com",
"Yahoo"
)
);
$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作为$value)
{
回声“
}
在现代版本的php中,您可以为选择的变量分配(解构)子数组值
好的教程:
代码:()
$array=[
["http://example1.com“,“示例1”],
["http://example2.com“,“示例2”]
];
foreach($array as[$key1,$key2]){
回音“\n”;
}
输出:
<a href="http://example1.com">Example 1</a>
<a href="http://example2.com">Example 2</a>
老实说,我可能会将变量分别命名为
$url
和$text
。但如何定位键?例如,我想在foreach循环中的某个位置添加$key1,在其他位置添加$key2。请参阅我更新的问题,了解我尝试执行的操作的解释。我如何定位一个键?例如,我想在foreach循环中的某个地方添加$key1,在其他地方添加$key2。请参阅我更新的问题以了解我的请求的解释。但是我如何定位这些键?请查看我编辑的答案。您想使用foreach密钥还是最简单的for循环版本?最简单的循环方式,请查看我更新的数组以了解我正在尝试执行的操作。是否可以@HenrikPetterson?这是考虑服务器性能时的最佳方法?顺便说一下,谢谢你的更新!你所说的$key1
和$key2
是什么意思?@请查看我更新的数组,它会更有意义。我觉得你的设计很奇怪。为什么您希望这些值使用2D数组而不是类似的东西:$array=array(“Google”=>,“Yahoo”=>”;