В PHP 5.3 есть хорошая функция, которая, кажется, делает то, что я хочу:
strstr(input,"\n",true)
К сожалению, сервер работает с PHP 5.2.17, а дополнительный третий параметр strstr
недоступен. Есть ли способ достичь этого в предыдущих версиях в одной строке?
Ну вот
$str = strtok($input, "\n");
strtok()
Документация
Уже поздно, но вы можете использовать взрыв.
<?php $lines=explode("\n", $string); echo $lines['0']; ?>
$first_line = substr($fulltext, 0, strpos($fulltext, "\n"));
или что-то подобное сделает трюк. Уродливый, но работоспособный.
пытаться
substr( input, 0, strpos( input, "\n" ) )
echo str_replace(strstr($input, '\n'),'',$input);
попробуй это:
substr($text, 0, strpos($text, chr(10))
list($line_1, $remaining) = explode("\n", $input, 2);
Легко получить верхнюю строку и оставшееся содержимое, если вы хотите повторить операцию. В противном случае используйте substr, как предлагается.
не зависит от типа символа линии.
(($pos=strpos($text,"\n"))!==false) || ($pos=strpos($text,"\r")); $firstline = substr($text,0,(int)$pos);
$ firstline теперь содержит первую строку из текста или пустую строку, если не обнаружены символы разрыва (или символ прерывания – это первый символ в тексте).
Вы можете использовать strpos
сочетании с substr
. Сначала вы найдете позицию, в которой находится символ, а затем возвращаете эту часть строки.
$pos = strpos(input, "\n"); if ($pos !== false) { echo substr($input, 0, $pos); } else { echo 'String not found'; }
Это то, что вы хотите ?
le Не заметил ограничения одной строки, поэтому это не применимо так, как есть. Вы можете объединить две функции только в одной строке, как предложили другие, или вы можете создать пользовательскую функцию, которая будет вызываться в одной строке кода, если захотите. Твой выбор.