文本文件到数组...任何想法?

时间:2011-07-20 14:44:55

标签: php

我需要将文本文件转换为数组...我不知道如何去做这个因为我见过的其他功能需要整个文件并将其放入数组但不完全是我想要的是这样我在这里寻求建议.. 以下是用文本文件编写的: “jim kroi,richard wuu,yan kebler,justin persaud”

如何使用php创建一个数组,在这个数组中,一个循环会自动将每个名称作为数组项,直到所有名称用完为止?

所以我想要做的最终结果是: $ array = array(“jim kroi”,“richard wuu”,“Yan kebler”,“justin persaud”);

所以某种循环基本上会搜索每个逗号并在其前提取名称,直到所有名称都用完为止。

有一些php substr和这样的函数,但我不太想到如何做到这一点..

是的,我确实有代码,现在是:

<?php
error_reporting(-1);




$fp = fopen('numbers.csv', 'w');

fputcsv($fp, $_POST['names']); 
fputcsv($fp, $_POST['numbers']); 


fclose($fp);



?>

我把它们全部放在csv中,但现在我怎样才能制作2个数组,一个名字另一个数字? http://imageshack.us/photo/my-images/215/csv.png/

使用implode我收到错误:

警告:implode()[function.implode]:错误的参数。第14行的C:\ Program Files \ xampp \ htdocs \ xampp \ something.php

<?php
error_reporting(-1);

$myFile = "testFile.txt";


$fh = fopen($myFile, 'r'); // open file
$theData = fread($fh, 5); // read file and store in var
$array = explode("\n", $theData); // explode string by lines using \n
echo implode("<br/>", $theData); // put the array back together and show each item as a line
fclose($fh);


?>

6 个答案:

答案 0 :(得分:1)

尝试将fgetcsv与自定义分隔符一起使用。

答案 1 :(得分:0)

类似的东西:

$names = array_map('trim', explode(',', file_get_contents('%yourFileHere')));

答案 2 :(得分:0)

使用explode()功能。

答案 3 :(得分:0)

$string = "jim kroi,richard wuu,yan kebler,justin persaud";
$arrNames = explode(',', $string);
var_dump($arrNames);

请参阅explode,使用file_get_contents

阅读文件

答案 4 :(得分:0)

你可以尝试爆炸;

$names = explode(',', $line);

http://php.net/manual/en/function.explode.php

答案 5 :(得分:0)

很简单

<?PHP
$myFile = "testFile.txt"; // file path and name
$fh = fopen($myFile, 'r'); // open file
$theData = fread($fh, 5); // read file and store in var
$array = explode("\n", $theData); // explode string by lines using \n
echo implode("<br/>", $theData); // put the array back together and show each item as a line
?>