Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP中如何从主数组中拆分或获取子数组的值_Php_Arrays_Loops_Foreach_Php 7 - Fatal编程技术网

PHP中如何从主数组中拆分或获取子数组的值

PHP中如何从主数组中拆分或获取子数组的值,php,arrays,loops,foreach,php-7,Php,Arrays,Loops,Foreach,Php 7,我想从main获取子数组的值。下面是我的数组 [tour_avaibility] => Array ( [tour_avaibility_location] => Array ( [Location_one] => Location_two [Location_seven] => Location_nine

我想从main获取子数组的值。下面是我的数组

 [tour_avaibility] => Array
        (
            [tour_avaibility_location] => Array
                (
                    [Location_one] => Location_two
                    [Location_seven] => Location_nine
                )

            [tour_avaibility_date] => Array
                (
                    [02/11/2020] => 02/17/2020
                    [02/21/2020] => 02/26/2020
                )

        )
我只想通过一个循环获得
'tour\u availability\u location'
&
tour\u availability\u date
值。我使用了下面的代码,但它重复了这个值

<?php
foreach ($tourAvaibilityDate['tour_avaibility'] as $key => $value) {?>
    <div class="other-tag justify-content-between">
            <?php
            foreach ( array_unique($tourAvaibilityLocation['tour_avaibility']['tour_avaibility_location'] ) as $k => $v) {?>    
                <div class="tag-name"><?php echo $k.$v; ?></div>
            <?php }?>

            <?php
            foreach ( array_unique($tourAvaibilityDate['tour_avaibility']['tour_avaibility_date'] ) as $k => $v) {?>    
            <div class="tag-price">25 Nov 2019 - 30 Nov 2019</div>
            <?php } ?>
        <div class="tag-remove text-light">
            <i class="fa fa-times"></i>
        </div>
    </div>
<?php } ?>

您需要在
$TourAvailabilityDate['tour\u Availability']
中分离每个数组的键和值;然后您可以对它们进行迭代。注意:此代码假定与位置的日期数相同:

$tours = $tourAvaibilityDate['tour_avaibility'];
$start_locations = array_keys($tours['tour_avaibility_location']);
$end_locations = array_values($tours['tour_avaibility_location']);
$start_dates = array_keys($tours['tour_avaibility_date']);
$end_dates = array_values($tours['tour_avaibility_date']);
$c = count($start_locations);
for ($i = 0; $i < $c; $i++) {
    echo $start_locations[$i] . ' - ' . $end_locations[$i] . "\n";
    echo $start_dates[$i] . ' - ' . $end_dates[$i] . "\n";
}

您需要在
$TourAvailabilityDate['tour\u Availability']中分离每个数组的键和值。
;然后您可以对它们进行迭代。注意:此代码假定与位置的日期数相同:

$tours = $tourAvaibilityDate['tour_avaibility'];
$start_locations = array_keys($tours['tour_avaibility_location']);
$end_locations = array_values($tours['tour_avaibility_location']);
$start_dates = array_keys($tours['tour_avaibility_date']);
$end_dates = array_values($tours['tour_avaibility_date']);
$c = count($start_locations);
for ($i = 0; $i < $c; $i++) {
    echo $start_locations[$i] . ' - ' . $end_locations[$i] . "\n";
    echo $start_dates[$i] . ' - ' . $end_dates[$i] . "\n";
}

只需将2019年11月25日至2019年11月30日期间的
$v
就像您对位置所做的一样,我已经尝试过不起作用,它的输出是“位置一-位置二02/11/2020-02/17/2020位置七-位置九02/21/2020-02/26/2020”位置一-位置二02/11/2020-02/17/2020位置七-位置九02/21/2020-02/26/2020。这是相同的值。这能回答你的问题吗@RaviMakwana,不,我也尝试创建一个与@Nick相同的演示,所以这里您只需将
2019年11月25日-2019年11月30日
替换为
$k.-”$v
就像您对位置所做的一样,我已经尝试过不起作用,它的输出是“位置一-位置二02/11/2020-02/17/2020位置七-位置九02/21/2020-02/26/2020”位置一-位置二02/11/2020-02/17/2020位置七-位置九02/21/2020-02/26/2020。这是相同的值。这能回答你的问题吗@RaviMakwana,不,我也在尝试创建一个与@Nick相同的演示,所以你可以在这里have@David不用担心-我很高兴我能帮上忙。@David不用担心-我很高兴我能帮上忙。
Location_one - Location_two
02/11/2020 - 02/17/2020
Location_seven - Location_nine
02/21/2020 - 02/26/2020