【问题标题】:How to create particular array from string in php [duplicate]如何从php中的字符串创建特定数组[重复]
【发布时间】:2013-01-08 06:26:44
【问题描述】:

我有 $str 字符串变量 & 我想从 $str 字符串创建一个 $array 数组。

    $str = "BKL|bkl,EXH|exh,FFV|ffv,LEC|lec,AUE|aue,SEM|sem";

    Final array should be 
    $array = array(
    'BKL'=> 'bkl',
    'EXH' => 'exh',
    'FFV' => 'ffv',
    'AUE' => 'aue'  
    );

【问题讨论】:

    标签: php arrays string


    【解决方案1】:

    这应该可以解决问题

    $str = "BKL|bkl,EXH|exh,FFV|ffv,LEC|lec,AUE|aue,SEM|sem";
    
    $final = array();
    
    foreach (explode(',', $str) as $pair) {
      list($key, $value) = explode('|', $pair);
      $final[$key] = $value;
    }
    
    print_r($final);
    

    输出

    Array
    (
        [BKL] => bkl
        [EXH] => exh
        [FFV] => ffv
        [LEC] => lec
        [AUE] => aue
        [SEM] => sem
    )
    

    【讨论】:

      【解决方案2】:

      试试这个,

      <?php
        $str = "BKL|bkl,EXH|exh,FFV|ffv,LEC|lec,AUE|aue,SEM|sem";
      
        $split = explode(',', $str);
        $arr = array();
        foreach($split as $v){
          $tmp = explode('|', $v);
          $arr[$tmp[0]] = $tmp[1];
        }
      
        print_r($arr);
      ?>
      

      输出:

      Array
      (
          [BKL] => bkl
          [EXH] => exh
          [FFV] => ffv
          [LEC] => lec
          [AUE] => aue
          [SEM] => sem
      )
      

      【讨论】:

        【解决方案3】:
        $str = "BKL|bkl,EXH|exh,FFV|ffv,LEC|lec,AUE|aue,SEM|sem";
        
        $result = array();
        $node = explode(',', $str);
        
        foreach ($node as $item) {
            $temp = explode('|', $item);
            $result[$temp[0]] = $temp[1];
        }
        

        【讨论】:

          【解决方案4】:
          $str = "BKL|bkl,EXH|exh,FFV|ffv,LEC|lec,AUE|aue,SEM|sem";
          $out = array;
          $arr = explode(',', $str);
          
          foreach ($arr as $item) {
              $temp = explode('|', $item);
              $out[$temp[0]] = $temp[1];
          }
          

          【讨论】:

            【解决方案5】:

            你应该看看 php 手册中的explode

            【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2019-02-14
            • 2015-05-28
            • 1970-01-01
            • 1970-01-01
            • 2011-06-17
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多