2015-09-04 1 views
-2

У меня есть текстовый блок, с этим содержанием:Как разбить текстовый блок на 2 строки, с PHP?

There is my first text. 

--- 

There is my second text, 1. 
There is my second text, 2. 
... 

Теперь я хочу, чтобы разделить его на 2 строки:

  1. $str_1 = "There is my first text.";
  2. $str_2 = "There is my second text, 1. There is my second text, 2.";

Как может Я разделил текстовый блок на 2 строки с помощью PHP?


Примечание:

1. --- может быть больше, например: , ----- ...
2. There is my first text. всегда начало текстового блока.


Потому что моя текстовая структура была изменена. Итак, мой вопрос имеет некоторые мини-изменения. Я склонен к этому.

+0

использовать 'explode()' function –

ответ

-1

См php explode

Что-то вроде так

$arr = explode("\n", $str) 

будет генерировать массив со следующим

[0] = [*]There is my first text 
[1] = 
[2] = There is my second text, 1 
[3] = There is my second text, 2 
1

Explode является вашим другом здесь. Разверните текстовый блок с помощью [*] в качестве разделителя и используйте array_filter, чтобы удалить первый пустой элемент.

$str = "[*]There is my first text.[*] 

There is my second text, 1. 
There is my second text, 2."; 
$result = array_filter(explode("[*]", $str)); 

после выполнения вы первый текст будет $result[0] и второй текст в $result[1]

EDIT: после того, как вы изменили свои требования, использовать preg_split:

$str = "There is my first text. 

--- 

There is my second text, 1. 
There is my second text, 2."; 
print_r(preg_split("/-+/", $str)); 

Это будет отдельный текст, используя любой номер -'s в качестве разделителя

+1

Вы получаете мой голос, за использование надлежащего пути и использование 'preg_split()'. – Darren

Смежные вопросы