如何获取一行的全部内容?我怀疑substr()
不是答案。
Authors: Mr. Foo, Mr. Bar
Date: Jan 1, 1970
etc...
在我的$file_text
字符串中,我有类似于上面的内容。我正在寻找这样的事情:
$author_line = substr($file_text, 0, EOL);
答案 0 :(得分:2)
如果有帮助,使用file()
获取文件内容会自动将其剪切为一行。
答案 1 :(得分:2)
用这个抓住每一行:
$eachLine = explode( PHP_EOL, $file_text );
那么你的普通子串就会抓住所有东西。如果它像你的例子一样被冒号分隔,那么你可以爆炸来提取一个键=>字符串中所有数据的值数组
// Grab each Line
$eachLine = explode( PHP_EOL, $file_text );
$data= array();
foreach($eachLine as $line) {
$line = explode($line, ':');
$data[trim($line[0])] = trim($line[1]);
}
这会给你一个键=> $data
中所有数据的值数组。
答案 2 :(得分:0)
尝试:
$lines = explode( PHP_EOL, $line_text );
然后遍历每一行:
foreach( $lines as $line )
{
//do something
}
答案 3 :(得分:0)
获取第一行(根据您的选择替换行尾分隔符):
$author_line = strtok($file_text, "\n");
替代:
list($author_line) = explode("\n", $file_text, 1);
答案 4 :(得分:0)
$author_line = substr($file_text, 0, strpos("\n"));
这将抓住第一行的所有内容,不包括行尾。您将不得不考虑Windows上的\ r \ n与Unix上的\ n。
更正确地编码为:
$author_line = substr($file_text, 0, strpos(PHP_EOL));
答案 5 :(得分:-1)
$author_line = explode("\n", $file_text );