0

行の内容全体を取得するにはどうすればよいですか?私は疑いを持っていsubstr()ますが答えではありません。

Authors: Mr. Foo, Mr. Bar
Date: Jan 1, 1970
etc...

私の$file_text文字列には、上記のようなものがあります。私はこのようなものを探しています:

$author_line = substr($file_text, 0, EOL);
4

6 に答える 6

2

でファイルの内容を取得するfile()と、役立つ場合は自動的に行に分割されます。

それ以外の場合は、試してくださいstrstr($file_text,PHP_EOL,true)

于 2012-04-17T15:43:30.143 に答える
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

于 2012-04-17T15:45:14.840 に答える
0

試す :

$lines = explode( PHP_EOL, $line_text );

次に、各行をループします。

foreach( $lines as $line ) 
{
    //do something
}
于 2012-04-17T15:43:58.777 に答える
0

最初の行を取得します(行末区切り文字を選択したものに置き換えます):

$author_line = strtok($file_text, "\n");

別:

list($author_line) = explode("\n", $file_text, 1);
于 2012-04-17T15:44:48.240 に答える
0
$author_line = substr($file_text, 0, strpos("\n"));

これにより、行末を除く最初の行のすべてが取得されます。Windowsでは\r\ n、Unixでは\nを考慮する必要があります。

より適切にコーディングされたもの:

$author_line = substr($file_text, 0, strpos(PHP_EOL));
于 2012-04-17T15:44:52.993 に答える
-1
$author_line = explode("\n", $file_text );
于 2012-04-17T15:45:17.260 に答える