fgets() 함수는 파일 포인터에서 한 줄을 읽습니다.
Syntax
fgets(file,length)
Parameters | Description |
---|---|
file | 필수입니다. 읽을 파일을 지정합니다. |
길이 | 선택사항. 읽을 바이트 수를 지정합니다. 기본값은 1024바이트입니다. |
Description
file이 가리키는 파일에서 한 줄을 읽고 최대 길이 - 1바이트의 string을 반환합니다. 개행 문자(반환 값에 포함됨), EOF 또는 길이 - 1바이트를 읽었을 때(둘 중 먼저 발생하는 것) 중지됩니다. 길이를 지정하지 않으면 기본값은 1K 또는 1024바이트입니다.
실패하면 false를 반환하세요.
팁 및 참고 사항
참고: 길이 매개변수는 PHP 4.2.0부터 선택 사항이 되며, 생략할 경우 줄 길이는 1024바이트로 간주됩니다. PHP 4.3부터 길이를 생략하면 줄 끝까지 스트림에서 계속 읽혀집니다. 파일의 줄 대부분이 8KB보다 큰 경우 스크립트에 최대 줄 길이를 지정하는 것이 리소스 활용에 더 효율적입니다.
참고: PHP 4.3부터 이 함수는 바이너리 파일에서 안전하게 사용할 수 있습니다. 이전 버전에서는 그렇지 않았습니다.
참고: 파일을 읽을 때 PHP가 Macintosh 파일의 줄 끝 문자를 인식할 수 없는 경우 auto_Detect_line_endings 런타임 구성 옵션을 활성화할 수 있습니다.
다음은 PHP fgets() 함수를 사용하여 텍스트 파일을 한 줄씩 읽는 예제입니다.
$handle = @fopen("D:/public/test.txt", "r"); if ($handle) { while (!feof($handle)) { $str = fgets($handle, 4096); //$str = '#主单词1#'; if(preg_match('/#(.+)#/',$str,$matches)){ $di_word = $matches[1]; $di_word = mysql_escape_string($di_word); $sql = " SELECT di_id FROM `du_index` WHERE di_word = '{$di_word}'"; $result = mysql_query($sql); $row = mysql_fetch_row($result); $di_id = $row[0]; if (count($dy_word)>0){ $sql = " INSERT INTO `du_yun` (`di_id`,`di_word`,`dy_word`,`dy_description`,`dy_status`,`dy_time`) VALUES"; for ($i=0;$i<count($dy_word);$i++){ $sql .= " ('{$di_id_1}','{$di_word_1}','{$dy_word[$i]}','{$dy_description[$i]}','1',now()),"; } $result = mysql_query(substr($sql,0,-1).';'); if ($result){}else{ echo $sql . '<br />'; } } $di_id_1 = $di_id; $di_word_1 = $di_word; $dy_word = $dy_description = array(); $sql = ''; continue; }; //$str = '[志願者]參[與]人員'; if (preg_match('/^\[(.+)\](.+)$/',$str,$matches)){ $dy_word[] = trim($matches[1]); $dy_description[] = trim($matches[2]); continue; } } if (count(dy_word)>0){ $sql = " INSERT INTO `du_yun` (`di_id`,`di_word`,`dy_word`,`dy_description`,`dy_status`,`dy_time`) VALUES"; for ($i=0;$i<count($dy_word);$i++){ $sql .= " ('{$di_id_1}','{$di_word_1}','{$dy_word[$i]}','{$dy_description[$i]}','1',now()),"; } $result = mysql_query(substr($sql,0,-1).';') or die(mysql_error()); if ($result){}else{ echo $sql . '<br />'; } } fclose($handle); }
위 내용은 php fgets() 함수 사용 예시 코드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!