【问题标题】:convert a string to multi dimensional array in php在php中将字符串转换为多维数组
【发布时间】:2015-06-20 22:31:05
【问题描述】:

我在 php 中将字符串转换为多维数组时遇到问题。这是我的字符串:

$String = a,b,c|d,e,f|g,h,y|

这就是我正在尝试的:

$one=explode("|",$String);
foreach ($one as $item)
{
    $one=explode(",",$one);
}

我想创建这个数组:

$array={ {a,b,c}, {d,e,f}, {g,h,y} };

【问题讨论】:

    标签: php arrays types


    【解决方案1】:

    试试 -

    $one=explode("|",$String);
    $array = array();
    foreach ($one as $item){
        $array[] = explode(",",$item);
    }
    

    【讨论】:

    • 对不起,我不知道为什么我第一次这样做时它对我不起作用,它的工作可能我当时犯了一个错误,非常感谢你跨度>
    【解决方案2】:

    使用此代码

    $String= 'a,b,c|d,e,f|g,h,y|';
    
    $one=explode("|",$String);
    
    print_r(array_filter($one));
    

    输出将是

    Array
    (
        [0] => a,b,c
        [1] => d,e,f
        [2] => g,h,y
    )
    

    【讨论】:

    • 这个只是打印数组和一个暗淡的数组不是两个你也没有拆分 " , "
    • 如果产生所需数据,请再检查一次。
    • 感谢您的帮助,但我需要的不是您上面写的内容,您可以再次检查我的问题,输出不同
    【解决方案3】:

    试试这个代码:

    $string = 'a,b,c|d,e,f|g,h,y|';
    $arr = array_map(function($iter){ return explode(',',$iter);},explode('|',$string));
    

    希望对你有所帮助。

    【讨论】:

      【解决方案4】:

      试试这个-

      $String = 'a,b,c|d,e,f|g,h,y|';
      
      $one = array_filter(explode("|", $String));
      
      print_r($one); //Array ( [0] => a,b,c [1] => d,e,f [2] => g,h,y ) 
      
      $result = array_map('v', $one);
      
      function v($one) {
          return explode(',',$one);
      }
      
      print_r($result); // Array ( [0] => Array ( [0] => a [1] => b [2] => c ) [1] => Array ( [0] => d [1] => e [2] => f ) [2] => Array ( [0] => g [1] => h [2] => y ) )
      

      【讨论】:

        【解决方案5】:

        你几乎做对了,除了循环部分。试试这个

        $result = [];
        $String = 'a,b,c|d,e,f|g,h,y|';
        
        $firstDimension = explode('|', $String); // Divide by | symbol
        foreach($firstDimension as $temp) {
            // Take each result of division and explode it by , symbol and save to result
            $result[] = explode(',', $temp);
        }
        
        print_r($result);
        

        【讨论】:

          猜你喜欢
          • 2015-03-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-06-23
          • 1970-01-01
          • 2019-02-13
          • 2012-11-17
          相关资源
          最近更新 更多