Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php中的数组有问题。请帮忙_Php_Arrays_Json_Multidimensional Array - Fatal编程技术网

php中的数组有问题。请帮忙

php中的数组有问题。请帮忙,php,arrays,json,multidimensional-array,Php,Arrays,Json,Multidimensional Array,我有这个 <?php if(isset($_GET['datos'])){ $xd = $_GET['datos']; $datosCompletos = explode(',', $xd); $longArreglo = count($datosCompletos); for ($i=0; $i < $longArreglo; $i++) { $arregloInformaci

我有这个

    <?php 
    if(isset($_GET['datos'])){
        $xd = $_GET['datos'];

       $datosCompletos = explode(',', $xd);
       $longArreglo = count($datosCompletos);

       for ($i=0; $i < $longArreglo; $i++) { 
            $arregloInformacion = explode('|', $datosCompletos[$i]);

        $longInformacion = count($arregloInformacion);
        $dato = "dato".$i; 
        for ($u=0; $u < $longInformacion; $u++) {
            $dato[$u] = $arregloInformacion[$u];
            echo $dato[$u];

        }
   }
}
?>
但是,根据这个密码,我得到了: SF1L220TT12H362167188ST1R520TT11M122122322ST1M220BH12M4882189111

为什么

要使用变量,需要将
$
翻一番:

$$dato[$u] = $arregloInformacion[$u];
但是,为什么要使用不同的
“dato.”$i
变量?为什么不使用多维数组:

$dato[$i] = $arregloInformacion;

问题在于此代码:

$dato = "dato".$i; 
for ($u=0; $u < $longInformacion; $u++) {
    $dato[$u] = $arregloInformacion[$u];
    echo $dato[$u];
}


没有运行它。

只需将您的代码替换为经过100%测试的代码即可

<?php
$xd = 'Sria.plan|Fnzas|139|Lopez%20Portillo%20Alcantara%20Jorge%20Ernesto|29|2013-05-01|0000188B|T|Titular|1984-03-19|2011-07-16|H|341.45|6305|276|153|673.4|7407.4|1185.18|8592.58|8674.75,Sria.plan.fnzas|Tesoreria|1538|Rodriguez%20Guzman%20Noemi|58|2011-05-01|0000188A|T|Titular|1998-12-16|1994-07-09|M|1083.78|20841|276|153|2127|23397|3743.52|27140.5|27222.7,Sria.plan.fnzas|Tesoreria|1500|Martinez%20Rodriguez%20Edith|23|2013-05-01|0000188C|B|Hija|1989-07-25|2006-04-16|M|438.62|8208|276|153|863.7|9500.7|1520.11|11020.8|11103';
$datosCompletos = explode(',', $xd);
$longArreglo = count($datosCompletos);

for ($i = 0; $i < $longArreglo; $i++) {
    $arregloInformacion = explode('|', $datosCompletos[$i]);
    $longInformacion = count($arregloInformacion);
    $dato = "dato" . $i;
    for ($u = 0; $u < $longInformacion; $u++) {
        $final_array[$dato][$u] = $arregloInformacion[$u];
    }
}
echo "<pre>";
print_r($final_array);
?>

请试试这个,它会有用的

美元兑换率['datos']=“Sria.plan | Fnzas | 139 | Lopez%20Portillo%20Alcantara%20Jorge%20Ernesto | 29 | 2013-05-01 | 0000188B | T | Titular | 1984-03-19 | 2011-07-16 | H | 341.45 | 6305 | 276 | 153 | 673.4 | 7407.4ヅ18.75 |,(4)种族主义者。计划。计划。种族主义者。种族主义者。计划。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。计划。种族主义者。计划。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者。种族主义者,古古兹曼,古古古古兹曼主义者。20诺埃埃米米米。20诺埃埃埃米,诺埃埃米。58。58。58。58。58。58。58。2011年。2011-2011-2011-2011-2011-2011-05-2011-2011-05-2011-05-05-2011-05-05-01-05-01-01-05-01那个那个那个2011-05-05-05-05-01-01-01-01-01那个那个那个那个那个那个些那个伊迪丝| 23 | 2013-05-01 | 0000188C | B | Hija | 1989-07-25 | 2006-04-16 | M | 438.62 | 8208 | 276 | 153 | 863.7 | 9500.7 1240.11 12420.8 | 11103 |

if(isset($\u GET['datos'])){
$xd=$_GET['datos'];
$datosCompletos=爆炸(',',$xd);
foreach($datocompletos作为$key=>$value){
$datosCompletos=分解(“|”,$value);
foreach($datocompletos作为$newkey=>$newvalue){
$datavalue[$key][$newkey]=$newvalue;
}
}
回声“;
打印(数据值);
这很有效



噢!谢谢!这个数据在get中真的是我用ajax发送的,以便在excel中做报告。我用json做了尝试,但不起作用,可能是我的php服务器,是不是PHP5.2.6,我不知道。所以,我是这样做的。我不知道如何使用多维数组><非常感谢!你用json和多维数组标记了这个问题,但是t你也不用。这是为了引起注意。我真的做了很多研究,我知道我用JSON和多维数组解决了问题,但没有找到答案。对不起,我用的是英语。我用的是翻译器。非常感谢!太好了!非常感谢!如果你对解决方案感到满意,问题解决了,请投票选出答案并接受它解决办法
$arrayName = "dato".$i;
$$arrayName = array();
for ($u=0; $u < $longInformacion; $u++) {
    $$arrayName[$u] = $arregloInformacion[$u];
    echo $$arrayName[$u];
}
<?php 
if(isset($_GET['datos'])){
  $outerArr = explode(',', $_GET['datos']);
  foreach ($outerArr as $items) {
    $data = explode('|', $items);
    $i = 0;
    foreach ($data as $dato) {
      $datos[$i] = $dato;
      echo $datos[$i];
      $i++;
    }
  }
}
?>
<?php
$xd = 'Sria.plan|Fnzas|139|Lopez%20Portillo%20Alcantara%20Jorge%20Ernesto|29|2013-05-01|0000188B|T|Titular|1984-03-19|2011-07-16|H|341.45|6305|276|153|673.4|7407.4|1185.18|8592.58|8674.75,Sria.plan.fnzas|Tesoreria|1538|Rodriguez%20Guzman%20Noemi|58|2011-05-01|0000188A|T|Titular|1998-12-16|1994-07-09|M|1083.78|20841|276|153|2127|23397|3743.52|27140.5|27222.7,Sria.plan.fnzas|Tesoreria|1500|Martinez%20Rodriguez%20Edith|23|2013-05-01|0000188C|B|Hija|1989-07-25|2006-04-16|M|438.62|8208|276|153|863.7|9500.7|1520.11|11020.8|11103';
$datosCompletos = explode(',', $xd);
$longArreglo = count($datosCompletos);

for ($i = 0; $i < $longArreglo; $i++) {
    $arregloInformacion = explode('|', $datosCompletos[$i]);
    $longInformacion = count($arregloInformacion);
    $dato = "dato" . $i;
    for ($u = 0; $u < $longInformacion; $u++) {
        $final_array[$dato][$u] = $arregloInformacion[$u];
    }
}
echo "<pre>";
print_r($final_array);
?>
Array
(
    [dato0] => Array
        (
            [0] => Sria.plan
            [1] => Fnzas
            [2] => 139
            [3] => Lopez%20Portillo%20Alcantara%20Jorge%20Ernesto
            [4] => 29
            [5] => 2013-05-01
            [6] => 0000188B
            [7] => T
            [8] => Titular
            [9] => 1984-03-19
            [10] => 2011-07-16
            [11] => H
            [12] => 341.45
            [13] => 6305
            [14] => 276
            [15] => 153
            [16] => 673.4
            [17] => 7407.4
            [18] => 1185.18
            [19] => 8592.58
            [20] => 8674.75
        )

    [dato1] => Array
        (
            [0] => Sria.plan.fnzas
            [1] => Tesoreria
            [2] => 1538
            [3] => Rodriguez%20Guzman%20Noemi
            [4] => 58
            [5] => 2011-05-01
            [6] => 0000188A
            [7] => T
            [8] => Titular
            [9] => 1998-12-16
            [10] => 1994-07-09
            [11] => M
            [12] => 1083.78
            [13] => 20841
            [14] => 276
            [15] => 153
            [16] => 2127
            [17] => 23397
            [18] => 3743.52
            [19] => 27140.5
            [20] => 27222.7
        )

    [dato2] => Array
        (
            [0] => Sria.plan.fnzas
            [1] => Tesoreria
            [2] => 1500
            [3] => Martinez%20Rodriguez%20Edith
            [4] => 23
            [5] => 2013-05-01
            [6] => 0000188C
            [7] => B
            [8] => Hija
            [9] => 1989-07-25
            [10] => 2006-04-16
            [11] => M
            [12] => 438.62
            [13] => 8208
            [14] => 276
            [15] => 153
            [16] => 863.7
            [17] => 9500.7
            [18] => 1520.11
            [19] => 11020.8
            [20] => 11103
        )

)
if(isset($_GET['datos'])){
    $xd = $_GET['datos'];

   $datosCompletos = explode(',', $xd);
   foreach($datosCompletos as $key=>$value ){
        $datosCompletos = explode('|', $value);
        foreach($datosCompletos as $newkey=>$newvalue ){
            $datavalue[$key][$newkey] =  $newvalue;
        }
   }

echo "<pre>";
print_r($datavalue);
  <?php
  $_GET['datos']="Sria.plan|Fnzas|139|Lopez%20Portillo%20Alcantara%20Jorge%20Ernesto|29|2013-05-01|0000188B|T|Titular|1984-03-19|2011-07-16|H|341.45|6305|276|153|673.4|7407.4|1185.18|8592.58|8674.75,Sria.plan.fnzas|Tesoreria|1538|Rodriguez%20Guzman%20Noemi|58|2011-05-01|0000188A|T|Titular|1998-12-16|1994-07-09|M|1083.78|20841|276|153|2127|23397|3743.52|27140.5|27222.7,Sria.plan.fnzas|Tesoreria|1500|Martinez%20Rodriguez%20Edith|23|2013-05-01|0000188C|B|Hija|1989-07-25|2006-04-16|M|438.62|8208|276|153|863.7|9500.7|1520.11|11020.8|11103";

  if (isset($_GET['datos']))
  {
     $xd = $_GET['datos'];
     $datosCompletos = explode(',', $xd);
     $longArreglo    = count($datosCompletos);

     for ($i = 0; $i < $longArreglo; $i++)
     {
        $arregloInformacion = explode('|', $datosCompletos[$i]);

        $longInformacion = count($arregloInformacion);
        $dato            = "dato" . $i;
        for ($u = 0; $u < $longInformacion; $u++)
        {
           $tmp=$$dato;
           $tmp[$u] = $arregloInformacion[$u];
           $$dato=$tmp;
        }
     }
        var_dump($dato0[0]);
        var_dump($dato0[1]);
        var_dump($dato0[2]);

        var_dump($dato1[0]);
        var_dump($dato1[1]);
        var_dump($dato1[2]);
  }
  ?>