php4で2GBぐらいのtxtファイルの行数を一番早く知る方法。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2005/07/29 19:13:52
  • 終了:--

回答(4件)

id:ymlab No.1

ymlab回答回数508ベストアンサー獲得回数342005/07/29 20:41:01

ポイント18pt

<?php

system(”wc -l [読み込みファイル名] >result.dat”);

$fp=fopen( ”[読み込みファイル名]”,’r’ )or die;

$rows = fgets($fp,100);

fclose($fp);

print ”行数=$rows”;

?>


なんてどうでしょう。

Linuxだったら、wcコマンドは大体入っていると思います。

id:kunitz

ありがとうございます!

2005/08/01 12:41:33
id:kel No.2

kel回答回数2ベストアンサー獲得回数02005/07/30 07:42:35

ポイント18pt

Linux系OSを使用している場合、shell に任せてしまう方法がベストかもしれません。


function GetFileLine($File) {

$handle = popen( ”cat $File | wc -l”, ”r” );

$lines = fgets( $handle );

pclose( $handle );

return $lines;

}

echo ”Line count is ”.GetFileLine(”hoge.txt”);


セキュリティ面に対する考慮はしていないので、コードを流用する際はお気を付けください。

id:kunitz

ありがとうございます!

ループするしかないんですかなぁ〜

2005/08/01 12:41:52
id:ito-yu No.3

ito-yu回答回数323ベストアンサー獲得回数142005/07/30 10:10:27

ポイント17pt

http://www5.plala.or.jp/vaio0630/ftp/command.htm

UNIXコマンドリファレンス

linuxなら、wcコマンドを使う。

list($count, $dummy) = explode(’ ’, trim(`wc -l /path/to/file`));

で、$countに行数が入ります。

OS非依存なら

count(file(’/path/to/file’);

とか?

id:kunitz

ありがとうございます!

2005/08/01 12:42:06
id:bebowrock No.4

bebowrock回答回数88ベストアンサー獲得回数02005/07/31 02:17:34

ポイント17pt

http://www.dummy.com/

Dummy at Dummy.com - Don't be a Dummy! Get the Right Business Executive Gifts and Employee Gifts

viでset nuではダメでしょうか?

id:kunitz

ありがとうございます!

set nu

2005/08/01 12:42:16

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません