PHP foreach循环键值错误

时间:2014-03-22 13:11:24

标签: php foreach key key-value

我想为我的html表单循环数组键和值。 的阵列:

Array
(
    [id] => 50e54d84d681c00e603935e3
    [controller] => osmf
    [defaultServiceUrl] => http://media.netd.com.tr
    [serviceUrl] => http://37.48.66.143
    [path] => S1/HLS_VOD/5ea1_1536/index.m3u8?key=49bfee85b05d117a2906368428094e94&app=com.dcom&max=1500
    [preview] => //s.dogannet.tv/q/i/76/1600x900/50e54e8cd681c00e603935e4
)

这是我的PHP代码:

<?php
foreach ($json as $key => $value) { 
    ?>
    <input type="hidden" name="<?php $key; ?>" value="<?php echo $value; ?>"></input>
    <?php
    }

但输出是:

<input type="hidden" name="" value="50e54d84d681c00e603935e3"></input>

<input type="hidden" name="" value="osmf"></input>

<input type="hidden" name="" value="http://media.netd.com.tr"></input>

<input type="hidden" name="" value="http://37.48.66.141"></input>

<input type="hidden" name="" value="S1/HLS_VOD/5ea1_1536/index.m3u8?key=49bfee85b05d117a2906368428094e94&app=com.dcom&max=1500"></input>

<input type="hidden" name="" value="//s.dogannet.tv/q/i/76/1600x900/50e54e8cd681c00e603935e4"></input>

我看不到名称。在我的html表单上,名称是空的。

1 个答案:

答案 0 :(得分:1)

您需要echo $key的值。到现在为止,你只是做<?php $key; ?>,它不执行任何操作。因此,做:

<?php print $key; ?>"

所有在一起,而不是

<?php
foreach ($json as $key => $value) { 
    ?>
    <input type="hidden" name="<?php $key; ?>" value="<?php echo $value; ?>"></input>
                               ^^^^^^^^^^^^^^
    <?php
    }

使用

<?php
foreach ($json as $key => $value) { 
    ?>
    <input type="hidden" name="<?php echo $key; ?>" value="<?php echo $value; ?>"></input>
                                ^^^^^^^^^^^^^^
    <?php
    }