вывод строки с определенного символа

Ixe

Новичок
вывод строки с определенного символа

не знал кк назвать тему

Есть строка, так вот, скажем нашлив в ней слово PHP далее нужно от найденного слова в лево отобразить скажем 10 слов, и в право тоже 10.

Релизовать то релизовал, да вот у меня только в два цикла for это получилсоь..

Подскажите как проще можно сделать.

-~{}~ 15.05.04 15:00:

да, а само найденное слово между этими строками
 

iliah

Новичок
правая часть
PHP:
$str="If you are new to PHP and want to get some idea of how it works, try the introductory tutorial. After that, check out the online  manual, and the example archive sites and some of the other resources available in the links section";
$i = strpos($str, "PHP");
$str_r = substr($str, $i);
$str_r_a = explode(" ", $str_r, 11);
array_pop($str_r_a);
$str_r_f = implode(" ", $str_r_a);
echo $str_r_f; // для проверки
левая аналогично

но это для строки где все слова разделены одиночными пробелами и нет \n
 

Infes

Guest
iliah,
bullshit у тебя а не реализация..И еще для лево сдвойной код писать...

вот мой вариант:
PHP:
$string ="If you are new to PHP and want to get some idea of how it works, try the introductory tutorial. After that, check out the online  manual, and the example archive sites and some of the other resources available in the links section";
$left = 11; //Отступ влево
$right = 11; //Отступ вправо
$array  = explode(' ', $string);
$key = array_search('PHP', $array);
$start = $key - $left;
if($start < 0)
{
   $start = 0;
   $end = $key + $right;
}
else
   $end = $left + $right;
   $new_array = array_slice($array, $start, $end+1);
echo  '...'.implode(' ', $new_array).'...'; //Выводим...
 
Сверху