【问题标题】:PHP add String to multidimensional Array, comma seperatedPHP将字符串添加到多维数组,逗号分隔
【发布时间】:2023-03-14 08:08:01
【问题描述】:

我正在尝试将字符串添加到 3*x 数组。我有一个字符串作为输入,具有 150*3 个值。

<?php
$myString = "5.1,3.5,Red,4.9,3,Blue,4.7,3.2,Red,4.6,3.1,Red,5,3.6,Red," //and so on   

?>

结果应该是这样的

Array
(
    [0] => Array
        (
            [0] => 5.1
            [1] => 3.5
            [2] => Red
        )

    [1] => Array
        (
            [0] => 4.9
            [1] => 3
            [2] => Blue
        )
//and so on

)

【问题讨论】:

  • 那你试过什么?出了什么问题?
  • 我对 PHP 还是很陌生。我想我应该使用两个 for 循环,我需要一种方法来获得分离.. 但是我怎么能告诉程序在他碰到逗号之前取子字符串?我应该使用指针还是应该删除刚刚使用的子字符串?
  • 你应该尝试发布一些代码,即使它不起作用。

标签: php arrays string


【解决方案1】:

首先,您需要将逗号分隔的字符串转换为数组。然后你可以使用array_chunk() 函数。

$myString = "5.1,3.5,Red,4.9,3,Blue,4.7,3.2,Red,4.6,3.1,Red,5,3.6,Red";

$explodedStringToArray = explode(',', $myString);
$chunked_array = array_chunk($explodedStringToArray, 3);
print_r($chunked_array);

这将产生:

Array
(
    [0] => Array
        (
            [0] => 5.1
            [1] => 3.5
            [2] => Red
        )

    [1] => Array
        (
            [0] => 4.9
            [1] => 3
            [2] => Blue
        )

    [2] => Array
        (
            [0] => 4.7
            [1] => 3.2
            [2] => Red
        )

    [3] => Array
        (
            [0] => 4.6
            [1] => 3.1
            [2] => Red
        )

    [4] => Array
        (
            [0] => 5
            [1] => 3.6
            [2] => Red
        )

)

【讨论】:

    【解决方案2】:

    你可以在字符串上使用explode(),然后使用array_chunk()对我们从explode函数得到的数组进行分块,记住要检查分块大小

    工作 sn-p:https://3v4l.org/qD1t0

    <?php
    $myString = "5.1,3.5,Red,4.9,3,Blue,4.7,3.2,Red,4.6,3.1,Red,5,3.6,Red"; //and so on 
    $arr = explode(",", $myString);
    $chunks = array_chunk($Arr, 3);
    
    print_r($chunks);
    

    【讨论】:

      猜你喜欢
      • 2013-10-12
      • 1970-01-01
      • 1970-01-01
      • 2014-05-27
      • 2015-06-23
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多