PHP将新行字符串存储到数组中
我正在编写PHP脚本,使用explode获取字符串,以便将字符串存储到数组中。我的代码有一个问题,因为当我拆分字符串以将其存储到数组中时,我会得到如下结果:PHP将新行字符串存储到数组中,php,arrays,Php,Arrays,我正在编写PHP脚本,使用explode获取字符串,以便将字符串存储到数组中。我的代码有一个问题,因为当我拆分字符串以将其存储到数组中时,我会得到如下结果: Array ( [0] => [1] => 0.1 noname.gif [2] => 0.2 what-is-bootstrap.png ) 以下是它应该是什么: Array ( [0] => 0.1 noname.gif [1] => 0.2 what-is-bootstrap.png) 以下是结果中显
Array ( [0] => [1] => 0.1 noname.gif [2] => 0.2 what-is-bootstrap.png )
以下是它应该是什么:
Array ( [0] => 0.1 noname.gif [1] => 0.2 what-is-bootstrap.png)
以下是结果中显示的内容:
attid: 0.1 filename: noname.gif
attid: 0.2 filename: what-is-bootstrap.png
代码如下:
<?php
$attached = 'attid: 0.1 filename: noname.gif
attid: 0.2 filename: what-is-bootstrap.png';
$attached_files = explode('attid:', $attached);
$attached_files = str_replace('filename:', '', $attached_files);
?>
我不知道如何使用每个键(如0和1)将字符串存储到数组中
你能给我举一个例子,当我拆分字符串时,如何将字符串存储到数组中吗?如果你添加以下行
$attached_files = array_values(array_map('trim', array_filter($attached_files)));
它可以做三件事
array\u filter()
将删除所有空行。第一个原因是,当你在<代码> 'ATIDD:'/COD> > <代码> > /代码>时,它会认为在第一次出现之前有一个值,这是空的。您可以执行array\u shift()
删除第一项,但是array\u filter()
将过滤所有空行
第二,您会发现有尾随的新行等。因此使用trim
的array\u map()
将确保删除任何多余的空白
最后,
array\u values()
将重新索引数组,使其从0开始。如果添加以下行
$attached_files = array_values(array_map('trim', array_filter($attached_files)));
它可以做三件事
array\u filter()
将删除所有空行。第一个原因是,当你在<代码> 'ATIDD:'/COD> > <代码> > /代码>时,它会认为在第一次出现之前有一个值,这是空的。您可以执行array\u shift()
删除第一项,但是array\u filter()
将过滤所有空行
第二,您会发现有尾随的新行等。因此使用trim
的array\u map()
将确保删除任何多余的空白
最后,
array\u values()
将重新索引数组,使其从0开始。非常感谢,所以我应该在哪一行添加array\u map附带的代码?使用explode()将其添加到行后的任意位置。
。虽然这将是理想的,因为它将确保在任何其他处理之前删除空行。好的,谢谢。我得到了这个数组([1]=>0.1 noname.gif[2]=>0.2 what-is-bootstrap.png)
,那么我如何设置以0而不是1开头的键呢?添加了Array\u values()
来重新索引数组。非常感谢您的帮助,因为这正是我想要的!非常感谢,那么我应该在哪一行添加array_map附带的代码?使用explode()
将其添加到该行之后的任意位置。虽然这将是理想的,因为它将确保在任何其他处理之前删除空行。好的,谢谢。我得到了这个数组([1]=>0.1 noname.gif[2]=>0.2 what-is-bootstrap.png)
,那么我如何设置以0而不是1开头的键呢?添加了Array\u values()
来重新索引数组。非常感谢您的帮助,因为这正是我想要的!