public static function readLine(string $file, callable $callable, ?int $length = 4096): void
	{
		if (!$handle = fopen($file, "r")) {
			throw new IOException("File '$file' cannot be open.");
		}

		$fgets = function () use (&$handle, &$length) {
			if ($length !== null) {
				return fgets($handle, $length);
			} else {
				return fgets($handle);
			}
		};

		$line = 1;
		$stopped = false;
		while (($buffer = $fgets()) !== false) {
			if ($callable($buffer, $line++) === false) {
				$stopped = true;
				break;
			}
		}
		if (!$stopped && !feof($handle)) {
			throw new IOException("Error: unexpected fgets() fail '$file'");
		}
		fclose($handle);
	}
public static function readLine(string $file, callable $callable, ?int $length = 4096): void
	{
		if (!$handle = fopen($file, "r")) {
			throw new IOException("File '$file' cannot be open.");
		}

		$fgets = function () use (&$handle, &$length) {
			if ($length !== null) {
				return fgets($handle, $length);
			} else {
				return fgets($handle);
			}
		};

		$line = 1;
		$stopped = false;
		while (($buffer = $fgets()) !== false) {
			if ($callable($buffer, $line++) === false) {
				$stopped = true;
				break;
			}
		}
		if (!$stopped && !feof($handle)) {
			throw new IOException("Error: unexpected fgets() fail '$file'");
		}
		fclose($handle);
	}
public static function readLine ( string $ file , callable $ callable , ? int $ length = 4096 ) : void { if ( ! $ handle = fopen ( $ file , "r" ) ) { throw new IOException ( "File '$file' cannot be open." ) ; } $ fgets = function ( ) use ( & $ handle , & $ length ) { if ( $ length !== null ) { return fgets ( $ handle , $ length ) ; } else { return fgets ( $ handle ) ; } } ; $ line = 1 ; $ stopped = false ; while ( ( $ buffer = $ fgets ( ) ) !== false ) { if ( $ callable ( $ buffer , $ line ++ ) === false ) { $ stopped = true ; break ; } } if ( ! $ stopped && ! feof ( $ handle ) ) { throw new IOException ( "Error: unexpected fgets() fail '$file'" ) ; } fclose ( $ handle ) ; }
Cteni ze souboru po radcich
@param string $file
@param callable $callable function($buffer, $line) $line -> cislo radku, pokud metoda vrati false, ukonci se cyklus
@param int|null $length
@throws IOException
Cteni ze souboru po radcich