Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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_Post_Multidimensional Array - Fatal编程技术网

PHP数组-从数组创建数组?

PHP数组-从数组创建数组?,php,arrays,post,multidimensional-array,Php,Arrays,Post,Multidimensional Array,你好,我有一个像这样的POST数组 Array ( [email_address] => Array ( [0] => simon@simonainley.info [1] => simon2@simonainley.info ) [firstname] => Array ( [0] => Simon [1] => Simon2 ) [surname] => Array (

你好,我有一个像这样的POST数组

Array (
  [email_address] => Array ( 
    [0] => simon@simonainley.info  
    [1] => simon2@simonainley.info 
  ) 
  [firstname] => Array ( 
    [0] => Simon 
    [1] => Simon2 
  ) 
  [surname] => Array ( 
    [0] => Ainley 
    [1] => Ainley2 
  ) 
  [companies_company_id] => NULL,
  [save_user] => Save User 
)
我想创建一个新的数组,将第一个电子邮件地址、名字和姓氏放入数组中,处理该数据,然后继续下一个电子邮件地址、名字和姓氏

这可能吗?我试过这个密码

$newArray = array();
    foreach($_POST as $key => $value)  {
    $newArray[] = $value;
}
然而,代码只是产生了这个

Array (
  [0] => Array ( 
      [0] => simon@simonainley.info 
      [1] => simon2@simonainley.info
  )
  [1] => Array ( 
      [0] => Simon 
      [1] => Simon2
  ) [2] => Array ( [0] => Ainley [1] => Ainley2 ) [3] => [4] => Save User ) 1
我需要做什么?

您可以尝试:

foreach($_POST as $key=>$value)
{
    $count=0;
    foreach($value as $val)
    {
        $newArray[$count++]=Array($key=>$val);
    }
}

您只需将元素重新排序到
$\u POST
数组中:

$users = array();
foreach($_POST as $key => $values) {
    if (is_array($values)) {
        foreach($values as $index => $value) {
            $users[$index][$key] = $value;
        }
    }
}
[0] => Array
    (
        [email_address] => simon@simonainley.info
        [firstname] => Simon
        [surname] => Ainley
    )

[1] => Array
    (
        [email_address] => simon2@simonainley.info
        [firstname] => Simon2
        [surname] => Ainley2
    )
根据您提供的数据,它将在
$users
数组中为您提供:

$users = array();
foreach($_POST as $key => $values) {
    if (is_array($values)) {
        foreach($values as $index => $value) {
            $users[$index][$key] = $value;
        }
    }
}
[0] => Array
    (
        [email_address] => simon@simonainley.info
        [firstname] => Simon
        [surname] => Ainley
    )

[1] => Array
    (
        [email_address] => simon2@simonainley.info
        [firstname] => Simon2
        [surname] => Ainley2
    )

$\u POST
中不是数组的元素将被忽略并过滤掉。

问题中的数组数据看起来确实有问题。我编辑了一点,以防为空。