Php 通过关联数组循环未按预期工作?
我有一个像这样的数组,我像这样循环:Php 通过关联数组循环未按预期工作?,php,arrays,Php,Arrays,我有一个像这样的数组,我像这样循环: $options = array(); $options[0] = 'test1'; $options[1] = 'test2'; $options[2] = 'test3'; foreach($options as $x) { echo "Value=" . $x ; echo "<br>"; } foreach($options as $key => $val){ echo "Val: ".$val; echo "&
$options = array();
$options[0] = 'test1';
$options[1] = 'test2';
$options[2] = 'test3';
foreach($options as $x)
{
echo "Value=" . $x ;
echo "<br>";
}
foreach($options as $key => $val){
echo "Val: ".$val;
echo "<br/>";
}
现在,我想向阵列中添加一些选项并通过它们进行循环:
$options = array();
$options['first_option'] = 'test';
$options['second_option'] = get_option('second_option');
$options['third_option'] = get_option('third_option');
foreach($options as $x)
{
echo "Value=" . $x ;
echo "<br>";
}
所以现在我不知道如何使用这些家伙的foreach访问存储值?
比如:
Value=first_option='test'
所以当我使用print\r($options)
输出为:
Array
(
[first_options] => test
[second_option] =>
[third_option] =>
)
1
您的循环应该如下所示:
$options = array();
$options[0] = 'test1';
$options[1] = 'test2';
$options[2] = 'test3';
foreach($options as $x)
{
echo "Value=" . $x ;
echo "<br>";
}
foreach($options as $key => $val){
echo "Val: ".$val;
echo "<br/>";
}
foreach($key=>$val的选项){
echo“Val:.$Val;
回声“
”;
}
您的循环应该如下所示:
$options = array();
$options[0] = 'test1';
$options[1] = 'test2';
$options[2] = 'test3';
foreach($options as $x)
{
echo "Value=" . $x ;
echo "<br>";
}
foreach($options as $key => $val){
echo "Val: ".$val;
echo "<br/>";
}
foreach($key=>$val的选项){
echo“Val:.$Val;
回声“
”;
}
您的代码正按预期工作,并产生预期的结果。您必须使用其他方法更改$options
中的值。更正:现在我看到了您的编辑,您的函数没有返回任何值,因此选项1和2为空。确保该函数返回一些内容。除此之外,所有这些代码都很好
顺便说一下,我建议:
$options = [
'first_option' => 'test',
'second_option' => get_option('second_option'),
'third_option' => get_option('third_option')
];
foreach($options as $key) {
echo "Value = {$key}<br>";
}
$options=[
“第一个选项”=>“测试”,
“第二个选项”=>获取选项(“第二个选项”),
“第三个选项”=>获取选项(“第三个选项”)
];
foreach($选项作为$key){
echo“Value={$key}
”;
}
您还可以使用:
foreach($options as $key => $value) {
echo "Value - {$value} = {$key}<br>";
}
foreach($key=>$value的选项){
echo“Value-{$Value}={$key}
”;
}
或者您至少可以将
array()
替换为[]
。这些只是一些整洁的建议。您的代码正按照预期工作,并产生了预期的结果。您必须使用其他方法更改$options
中的值。更正:现在我看到了您的编辑,您的函数没有返回任何值,因此选项1和2为空。确保该函数返回一些内容。除此之外,所有这些代码都很好
顺便说一下,我建议:
$options = [
'first_option' => 'test',
'second_option' => get_option('second_option'),
'third_option' => get_option('third_option')
];
foreach($options as $key) {
echo "Value = {$key}<br>";
}
$options=[
“第一个选项”=>“测试”,
“第二个选项”=>获取选项(“第二个选项”),
“第三个选项”=>获取选项(“第三个选项”)
];
foreach($选项作为$key){
echo“Value={$key}
”;
}
您还可以使用:
foreach($options as $key => $value) {
echo "Value - {$value} = {$key}<br>";
}
foreach($key=>$value的选项){
echo“Value-{$Value}={$key}
”;
}
或者您至少可以将
array()
替换为[]
。这些只是一些整洁的建议。你能给我们看看echo''、print\r($options),''的输出吗代码>?您能否向我们展示echo''、print\r($options),''的输出代码>?