Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.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 - Fatal编程技术网

PHP将新行字符串存储到数组中

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) 以下是结果中显

我正在编写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)
以下是结果中显示的内容:

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()
来重新索引数组。非常感谢您的帮助,因为这正是我想要的!