首页 > 解决方案 > php 如果数组有另一个数组

问题描述

似乎很奇怪的事情。有什么方法可以检测php 中包含的内容array,例如. 我只想插入数据sub-arrayparent-childcss, jqueryarraysubarray

动态菜单

<?php
    if(){ //loop starts
?>  
    <li>
        <input type="checkbox" name="menu[]" value="<?php echo $row['value']?>"> <?php echo $row['title'];
            <ul>
                <?php
                    if(){ //loop starts
                ?>
                <li>
                    <input type="checkbox" name="submenu[]" value="<?php echo $row1['value']?>"><?php echo $row1['subtitle'];
                </li>;
                }?>

            </ul>
    </li>
}?>

输出

<li>
    <input type="checkbox" name="menu[]" value="vehicle">
    <ul>
        <li><input type="checkbox" name="submenu[]" value="car"></li>
        <li><input type="checkbox" name="submenu[]" value="bike"></li>
     </ul>
</li>
<li><input type="checkbox" name="menu[]" value="sport"></li>

上传.php

$data = explode("," ,$_POST["menu"]); 
$subdata = explode("," ,$_POST["submenu"]);
foreach ($data AS $key => $menu){
    if(){         // This Menu has subarray

    }

标签: phparrayscheckboxsub-array

解决方案


您可以使用该is_array函数查看变量是否为数组,如果要递归检查,则可以使用array_walk_recursivewithis_array作为回调。

注意:如果使用array_walk_recursive,它将对非数组项运行回调,因此您可以将返回的内容array_walk_recursive与原始数组进行比较,以找出所有数组项。但是,is_array似乎是更简单的选择。

现场示例

重复


推荐阅读