1

我有一个数组,但键/索引只显示所有值的零而不是0,1,2,3,4,5。当我打印数组时,它显示为

Array
(
    [0] => https://giphy.com/ladygaga
)
Array
(
    [0] => https://plus.google.com/+LadyGaga
)
Array
(
    [0] => https://twitter.com/ladygaga
)
Array
(
    [0] => https://www.facebook.com/ladygaga
)
Array
(
    [0] => https://www.instagram.com/ladygaga/
)

这是我的代码

foreach($social_media as $social){

    $typesocial = $social['type'];
    $val = array($social['url']['resource']);

    if ($social['type'] === 'social network') 
    {
        echo '<pre>'; print_r($val); echo '</pre>';
    }
}
4

2 回答 2

0

我认为您正在寻找类似的东西:

 foreach($social_media as $social){

    $typesocial = $social['type'];
    if($social['type'] === 'social network') {
      $host = parse_url($url, PHP_URL_HOST);
      $key = preg_match('#([a-z]*)\.[a-z]+$#', $host, $a);
      $valKey[$key] = $social['url']['resource'];
      $val[] = $social['url']['resource'];
    }

}
print_r($val);
print_r($valKey);
于 2020-06-11T14:11:06.050 回答
0

您总是在数组 array($social['url']['resource']); 中赋值 所以索引 0 上显示的一个值总是删除这个数组试试下面的代码

 $val = array();
foreach($social_media as $social){

    $typesocial = $social['type'];
    $val[] = (isset($social['url']['resource'])) ? $social['url']['resource'] : '';

    if ($social['type'] === 'social network') 
    {
        echo '<pre>'; print_r($val); echo '</pre>';
    }
}
于 2020-06-11T14:33:01.473 回答