stream-get-line

Добавил: WorldPad, 2012-02-23 10:50:53. Просмотров: 776. Категория: Сетевые функции

(PHP 5)

stream_get_lineПолучает строку из потокового ресурса до указанного разделителя.

Описание

string stream_get_line ( resource $handle , int $length [, string $ending ] )

Получает строку из указанного дескриптора.

Чтение заканчивается, когда прочитано length количество байт, когда строка, указанная в параметре ending найдена (она не включается в возвращаемое значение), или достигнут EOF (смотря что произойдет раньше).

Функция очень похожа на функцию fgets(), кроме того, что она позволяет использовать разделители строк, отличающиеся от стандартных \n, \r, и \r\n, и не возвращает сам разделитель.

 

 

Список параметров

handle

Допустимый дескриптор файла.

length

Количество байт для чтения из дескриптора.

ending

Необязательный разделитель строки.

 

 

<?php
function istream_get_line(&$fp, $length, $end) {
   
$current = ftell($fp);
   
$str = fread($fp, $length);
   
$i = strpos($str, $end);
    if (
$i === FALSE) {
        return
$str;   
    } else {
       
fseek($fp, $current + $i + strlen($end));
        return
substr($str, 0, $i);
    }
}
?>