PHP在方括号中分解数字

PHP在方括号中分解数字,php,arrays,explode,Php,Arrays,Explode,我有以下列表,这些列表是我从Android以这种格式输入PHP的: //How I get phonenumberlist $phonenumberlist = isset($_POST['PhoneNumberList']) ? $_POST['PhoneNumberList'] : ''; //The output of phonenumberlist when I print to text $phonenumberlist = [0761234567, 072999999, 07311

我有以下列表,这些列表是我从Android以这种格式输入PHP的:

//How I get phonenumberlist 
$phonenumberlist = isset($_POST['PhoneNumberList']) ? $_POST['PhoneNumberList'] : '';
//The output of phonenumberlist when I print to text
$phonenumberlist = [0761234567, 072999999, 0731111111];
我想逐个分解这些数字,我尝试了:

 $phonenumberlist_exploded = explode(',', $phonenumberlist);
 foreach ($phonenumberlist_exploded as $number)
 {
     echo $number;
 }
我得到以下警告:

Warning: explode() expects parameter 2 to be string, array given in

$phonenumberlist
已经是一个数组。没有必要引爆它。只需对其进行迭代,以回显值

然而:

分析错误:无效的数值文本

因此,您需要将这些值用引号括起来,使PHP将其作为字符串处理:

$phonenumberlist = ['0761234567', '072999999', '0731111111'];
foreach($phonenumberlist as $number) {
    echo $number;
}

$phonenumberlist
已经是一个数组。没有必要引爆它。只需对其进行迭代,以回显值

然而:

分析错误:无效的数值文本

因此,您需要将这些值用引号括起来,使PHP将其作为字符串处理:

$phonenumberlist = ['0761234567', '072999999', '0731111111'];
foreach($phonenumberlist as $number) {
    echo $number;
}

您可以这样转换列表:-

$phonenumberlist = '[0761234567, 072999999, 0731111111]';
$phonenumberlist = str_replace([' ', '[', ']', ','], ['', '["', '"]', '","'], $phonenumberlist);
$phonenumberlist = json_decode($phonenumberlist, true);
它将:-

  • 删除所有空格
  • 用双引号将所有数字括起来(将其转换为字符串类型)
  • 使用json_decode将字符串转换为数组
  • [编辑1] 另一种选择:-

    $phonenumberlist = '[0761234567, 072999999, 0731111111]';
    $phonenumberlist = trim(trim($phonenumberlist, '['), ']');
    $phonenumberlist = explode(', ', $phonenumberlist);
    
  • 修剪支架
  • 将字符串分解为数组

  • 希望这对您有所帮助。

    您可以这样转换列表:-

    $phonenumberlist = '[0761234567, 072999999, 0731111111]';
    $phonenumberlist = str_replace([' ', '[', ']', ','], ['', '["', '"]', '","'], $phonenumberlist);
    $phonenumberlist = json_decode($phonenumberlist, true);
    
    它将:-

  • 删除所有空格
  • 用双引号将所有数字括起来(将其转换为字符串类型)
  • 使用json_decode将字符串转换为数组
  • [编辑1] 另一种选择:-

    $phonenumberlist = '[0761234567, 072999999, 0731111111]';
    $phonenumberlist = trim(trim($phonenumberlist, '['), ']');
    $phonenumberlist = explode(', ', $phonenumberlist);
    
  • 修剪支架
  • 将字符串分解为数组

  • 希望这有帮助。

    如果在上面的示例中显示为数字而不是文本,则可能会出现前面的零值,考虑单引号$ $ PrimeNealList=('07612345 67)、“072999999”、“0731111111”;或者如果这是示例数据,则添加填充(如果您知道它将是多少位),您的意思是
    $phonenumberlist='[0761234567072999907311111]
    我将android中的项目添加为字符串项目,并将整个列表作为字符串传递给PHP,PHP将列表识别为int,同样为了回答您的问题,我有[int,int,int]没有字符串quotevar_dump($phonenumberlist);你看到了什么?数组我打赌。<代码> FoeChank($PopeNoSQL列表为$1){回声$};} /Case>不起作用。如果在上面的示例中显示为数字而不是文本,则可能与前面的零值有关,考虑单引号$PosippBeList==[07612345 67′,' 072999999′,' 0731111111′];或者如果这是示例数据,则添加填充(如果您知道它将是多少位),您的意思是
    $phonenumberlist='[0761234567072999907311111]
    我将android中的项目添加为字符串项目,并将整个列表作为字符串传递给PHP,PHP将列表识别为int,同样为了回答您的问题,我有[int,int,int]没有字符串quotevar_dump($phonenumberlist);你看到了什么?我打赌的数组。
    foreach($phonenumberlist as$number){echo$number;}
    不起作用吗?我有数百个电话号码,我只使用了3作为示例,我不想手动添加引号,因为我得到的列表可能会更改,所以有没有办法系统地添加引号?我有数百个电话号码,我只使用了3个作为示例,我不想手动添加引号,因为我得到的列表可能会更改,所以有没有办法系统地添加引号?