Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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
Explode function在PHP中不起作用显示错误行需要参数2_Php - Fatal编程技术网

Explode function在PHP中不起作用显示错误行需要参数2

Explode function在PHP中不起作用显示错误行需要参数2,php,Php,这里是$\u POST['members'],我想用| [members] => Array ( [0] => test.com|test Melissa [1] => eboo@abcd.com.au|Buckley test [2] => testtest@test.com.au|test Ashley [3] => testset.com.au|Fo

这里是
$\u POST['members']
,我想用
|

[members] => Array
        (
            [0] => test.com|test Melissa
            [1] => eboo@abcd.com.au|Buckley test
            [2] => testtest@test.com.au|test Ashley
            [3] => testset.com.au|Forno test
            [4] => get.com.au|test Nathan
            [5] =>set.com.au|Brown test
        )
我正在尝试以下php代码

$get=explode('|',$_POST['members']);
echo '<pre>'; 
print_r($get);
$get=explode('|',$_POST['members']);
回声';
打印(获取);

由于
$\u POST['members']
是数组,您需要通过访问所有数组元素在foreach中使用explode:

foreach($_POST['members'] as $str){
  $get[] = explode('|',$str);
}
print_r($get);
foreach($\u POST['members']作为$members)
{
$get=分解(“|”,$members);
回显“”;打印($get);
}
试试下面的方法

    array (size=6)
          0 => 
            array (size=2)
              0 => string 'test.com' (length=8)
              1 => string 'test Melissa' (length=12)
          1 => 
            array (size=2)
              0 => string 'eboo@abcd.com.au' (length=16)
              1 => string 'Buckley test' (length=12)
          2 => 
            array (size=2)
              0 => string 'testtest@test.com.au' (length=20)
              1 => string 'test Ashley' (length=11)
          3 => 
            array (size=2)
              0 => string 'testset.com.au' (length=14)
              1 => string 'Forno test' (length=10)
          4 => 
            array (size=2)
              0 => string 'get.com.au' (length=10)
              1 => string 'test Nathan' (length=11)
          5 => 
            array (size=2)
              0 => string 'set.com.au' (length=10)
              1 => string 'Brown test' (length=10)

在数据数组中循环,将爆炸结果存储在新数组中,也许您得到了想要的结果:

$arr = array(
  'test.com|test Melissa',
  'eboo@abcd.com.au|Buckley test',
  'testtest@test.com.au|test Ashley',
  'testset.com.au|Forno test',
  'get.com.au|test Nathan',
  'set.com.au|Brown test'
);
$get = array();
foreach ($_POST['members'] as $member) {
  $get[] = explode('|',$member);
}
echo '<pre>'; print_r($get);

$\u POST['members']
是一个数组和
explode()在字符串上工作。您必须在数组中循环并分解每个值。大概是这样的:

$arr=array(
“test.com | test Melissa”,
'eboo@abcd.com.au|巴克利试验',
'testtest@test.com.au|测试Ashley',
'testset.com.au | Forno test',
“get.com.au | test Nathan”,
“set.com.au |布朗测试”
);
$get=array();
foreach($_POST['members']作为$member){
$get[]=分解(“|”,$member);
}
回声';打印(获取);

为了
分解
需要通过
$\u POST['members']
循环的值,您可以使用。
以下是使用和的示例:

您可以这样使用

foreach($\u POST['members']作为$val){
$get=explode(“|”,$val);
} 回声“;打印(获取);

您需要在
$\u POST['members']
数组中循环并分解它
echo';打印(获取)应在loop@LemonOP没有提到他想为所有爆炸结果创建一个数组…每个人都会根据自己对这种情况的理解发布答案。。。
    array (size=6)
          0 => 
            array (size=2)
              0 => string 'test.com' (length=8)
              1 => string 'test Melissa' (length=12)
          1 => 
            array (size=2)
              0 => string 'eboo@abcd.com.au' (length=16)
              1 => string 'Buckley test' (length=12)
          2 => 
            array (size=2)
              0 => string 'testtest@test.com.au' (length=20)
              1 => string 'test Ashley' (length=11)
          3 => 
            array (size=2)
              0 => string 'testset.com.au' (length=14)
              1 => string 'Forno test' (length=10)
          4 => 
            array (size=2)
              0 => string 'get.com.au' (length=10)
              1 => string 'test Nathan' (length=11)
          5 => 
            array (size=2)
              0 => string 'set.com.au' (length=10)
              1 => string 'Brown test' (length=10)
$arr = array(
  'test.com|test Melissa',
  'eboo@abcd.com.au|Buckley test',
  'testtest@test.com.au|test Ashley',
  'testset.com.au|Forno test',
  'get.com.au|test Nathan',
  'set.com.au|Brown test'
);
$get = array();
foreach ($_POST['members'] as $member) {
  $get[] = explode('|',$member);
}
echo '<pre>'; print_r($get);
<?php
$members = !empty($_POST['members']) ? $_POST['members'] : die("post members is empty");
foreach($members as $member)
{
    list($siteEmail, $name) = explode("|", $member);
    echo "<pre> $siteEmail $name </pre>";
}