Php 解码json,foreach显示键,但不显示值

Php 解码json,foreach显示键,但不显示值,php,arrays,json,foreach,Php,Arrays,Json,Foreach,我似乎无法从下面的foreach中获得价值。我需要基本上创建一个循环,然后根据选择创建html按钮 我还在本文下方添加了一个代码片段示例,以展示我试图在foreach中实现的功能。我只需要找出如何提取这些值,这样我就能做到 我基本上想创建一个foreach循环,检查用户添加了多少个按钮,然后在href中用链接和自定义按钮名称显示循环中的每个按钮。我还必须检查他们从showBtn值中选择了1,2,3,4,以确定要输出的html类型 if showBtn==1 { <a herf="btnMe

我似乎无法从下面的foreach中获得价值。我需要基本上创建一个循环,然后根据选择创建html按钮

我还在本文下方添加了一个代码片段示例,以展示我试图在foreach中实现的功能。我只需要找出如何提取这些值,这样我就能做到

我基本上想创建一个foreach循环,检查用户添加了多少个按钮,然后在href中用链接和自定义按钮名称显示循环中的每个按钮。我还必须检查他们从showBtn值中选择了1,2,3,4,以确定要输出的html类型

if showBtn==1 { <a herf="btnMenuLink">btnName</a> }

if showBtn==3 { <a herf="btnPhone">btnName</a> }
如果showBtn==1{

这是因为您的
$value
是一个数组,而不是一个设定值。您需要再次循环它:

foreach($array as $key => $values) {
    foreach($values as $item) {
         echo $key . ":" . $item;
    }
    echo "<hr />";
}
foreach($key=>$value的数组){
foreach(价值为$item){
echo$key.“:”$item;
}
回声“
”; }

因此,
$value2
将包含数组中的元素


另外,如果您在执行echo$value时没有看到任何错误或警告消息;您应该打开
error\u reporting
,因为它在开发时非常有用。

您是经典的!谢谢,伙计;)@JohnRama愉悦伙伴,我们总是错过了一些小的消息:Phow我要提取密钥以便执行一些if语句吗?示例$item->btnname噢,对了!将
foreach($item的值)
更改为
foreach($check\u key=>$item的值)
,然后如果showBtn=$check\u key,就可以执行
{…
@JohnRama我很快会帮你解决这个问题的。谢谢你,但我不得不把它交给Darren,因为他基本上是先发的,它做了我想做的。无论如何,我必须在这里做进一步的调整。我仍然坚持这个伙伴。我已经在我的帖子中添加了更多的代码,还有一个显示我想要什么的链接。如果你能帮我的忙,我会很高兴的沉淀
$jsonresult = '{"showBtn":["3","3"],"btnMenuLink":["101","101"],"btnArticleLink":["2","2"],"btnPhone":["036244789","0404256478"],"btnURL":["",""],"btnName":["Office","Mobile"]}';

$array          =   json_decode($jsonresult,true);

foreach ($array as $key => $value) {
    foreach ($value as $next_key => $next_value) { 
        echo $key.":".$next_key.":".$next_value."\n";
    } }

// I want this

// if(showBtn==3) {

// echo '<a herf='tel:btnPhone'>btnName</a>';

// }

// the result would be

// <a href="tel:036244789">Office</a> <a href="tel:0404256478">Mobile</a>
foreach($array as $key => $values) {
    foreach($values as $item) {
         echo $key . ":" . $item;
    }
    echo "<hr />";
}
foreach ($array1 as $key1 => $value1) {
    foreach ($value as $key2 => $value2) {
        echo "this is a nested loop";
    }
}