将字符串从关联数组转换为多维数组

时间:2018-01-14 20:08:05

标签: php arrays string multidimensional-array

我将图片链接存储到数据库中,用,分隔它们,但我想将这个字符串转换为数组,但我不知道该怎么做。

所以我的数组看起来像这样:

$array = array(
"name" => "Daniel",
"urls" => "http:/localhost/img/first.png,http://localhost/img/second.png"
);

所以我想以下面的形式提供它:

$array2 = array(
"name" => "Daniel",
"urls" => array("http:/localhost/img/first.png",
                "http://localhost/img/second.png" )
);

2 个答案:

答案 0 :(得分:2)

我已经有一段时间没有使用PHP了,但对于这个简单的用例,我会使用explode

#!/bin/bash 
file1=/home/turgun/Desktop/IBteck/script-last/frags 
imagelist=/home/turgun/Desktop/IBteck/script-last/imagelist 
counter=1 
for counter in `cat $imagelist` 
do 
     n=`awk '/'$counter'/{ print NR; exit }' $file1`
     for n in `cat $file1` 
     do 
          if [[ ! $n = 'IMAGE' ]]; then 
              echo "For Image $counter total size is " \
                   `grep FRAG frags | awk '{print total+=$4}'`  
          fi 
     done 
done

不确定我的问题是否正确解释了?

答案 1 :(得分:0)

您可以使用以下示例中的array_walk_recursive

function url(&$v,$k)
{
    if($k=='urls') {
    $v = explode(",",$v);
    }
}
$array = array(
"name" => "Daniel",
"urls" => "http:/localhost/img/first.png,http://localhost/img/second.png"
);
array_walk_recursive($array,"url");

您可以查看PHP Sandbox

上的输出