Подтвердить что ты не робот

Получить первую строку строки в PHP

В PHP 5.3 есть хорошая функция, которая, кажется, делает то, что я хочу:

strstr(input,"\n",true)

К сожалению, сервер запускает PHP 5.2.17, а дополнительный третий параметр strstr недоступен. Есть ли способ достичь этого в предыдущих версиях в одной строке?

4b9b3361

Ответ 2

Поздно, но вы можете использовать explode.

<?php
$lines=explode("\n", $string);
echo $lines['0'];
?>

Ответ 3

$first_line = substr($fulltext, 0, strpos($fulltext, "\n"));

или что-то подобное сделает трюк. Уродливый, но работоспособный.

Ответ 4

попробуйте

substr( input, 0, strpos( input, "\n" ) )

Ответ 5

echo str_replace(strstr($input, '\n'),'',$input);

Ответ 6

попробуйте следующее:

substr($text, 0, strpos($text, chr(10))

Ответ 7

list($line_1, $remaining) = explode("\n", $input, 2);

Легко получить верхнюю строку и оставшееся содержимое, если вы хотите повторить операцию. В противном случае используйте substr, как предложено.

Ответ 8

не зависит от типа символа линии.

(($pos=strpos($text,"\n"))!==false) || ($pos=strpos($text,"\r"));

$firstline = substr($text,0,(int)$pos);

$firstline теперь содержит первую строку из текста или пустую строку, если не обнаружены символы прерывания (или символ прерывания - это первый символ в тексте).

Ответ 9

Вы можете использовать strpos в сочетании с substr. Сначала вы найдете позицию, в которой находится символ, а затем возвращаете эту часть строки.

$pos = strpos(input, "\n");

if ($pos !== false) {
echo substr($input, 0, $pos);
} else {
echo 'String not found';
}

Это то, что вы хотите?

l.e. Не заметил ограничения одной строки, поэтому это не применимо так, как есть. Вы можете объединить две функции только в одной строке, как предложили другие, или вы можете создать пользовательскую функцию, которая будет вызываться в одной строке кода, если захотите. Ваш выбор.