Здраствуйте! У меня проблема, которая заключается в следующем: есть текстовый файл, который хранит в себе сообщения. Сообщения разделены между собой символом [!]. Есть функция которая возвращает текст сообщения по его индексу. Так вот, проблема заключается в том, что в случае, когда в этом файле всречаются два одинаковых сообщения, напимер 'message_1[!]message_2[!]message_1[!]', вывести все три не получаеться выводит только 'message_1' и 'message_2'.
Вот код функции и пример ее вызова:
| Код | function view_mess ($read, $mess_number) { global $message_count; global $glob_mess; $end=strpos($read,"[!]"); $str_replace=$read; for ($i=0; $i<$message_count; $i++) { $sub_str=substr($str_replace,0,$end+3); $message=substr($str_replace,0,$end); if ($i==$mess_number) $glob_mess[]=$message; //print("$message<br>"); $str_replace=str_replace($sub_str,"",$read); $read=$str_replace; $end=strpos($read,"[!]"); } }
|
Пример вызова:
| Код | for ($i=0; $i<$message_count; $i++) { view_mess($name_readed, $i); // $name_readed хранит в себе строку
message_1[!]message_2[!]message_1[!] print($glob_mess); }
| |