<?php
//$fp = fopen('d:/\test.txt','w+');
//
//fwrite($fp, '123');
//
//fclose($fp);
//mb_internal_encoding('utf-8');
$text = "ну что. не смотрел еще black mesa.я собирался скачать ,но все как-то некогда было." ;
// Для тестов
// $text = 'roses are red,and violets are blue.whatever you do i'll keep it for you.';
// $text = 'привет.есть 2 функции,preg_split и explode ,не понимаю,в чем между ними разница.';
$preg = "#[ ]*[.!?][ ]*#ui" ;
$parts = preg_split ( $preg , $text , 0 , PREG_SPLIT_NO_EMPTY
) ;
$partAll = '' ;
foreach ( $parts as $part )
{
$partN = $first . $last ;
$partAll = $partAll . $partN . ". " ;
// print($partN);
//Ну что. Не смотрел еще black mesa. Я собирался скачать ,но все как-то некогда было.
}
print ( $partAll ) ;
//Я собирался скачать ,но все
PD9waHAKCi8vJGZwID0gZm9wZW4oJ2Q6L1x0ZXN0LnR4dCcsJ3crJyk7Ci8vCi8vZndyaXRlKCRmcCwgJzEyMycpOwovLwovL2ZjbG9zZSgkZnApOwoKCi8vbWJfaW50ZXJuYWxfZW5jb2RpbmcoJ3V0Zi04Jyk7CgokdGV4dCA9ICLQvdGDINGH0YLQvi4gICAgICDQvdC1INGB0LzQvtGC0YDQtdC7INC10YnQtSBibGFjayBtZXNhLtGPINGB0L7QsdC40YDQsNC70YHRjyDRgdC60LDRh9Cw0YLRjCAgLNC90L4g0LLRgdC1INC60LDQui3RgtC+INC90LXQutC+0LPQtNCwINCx0YvQu9C+LiI7Ci8vINCU0LvRjyDRgtC10YHRgtC+0LIKLy8gJHRleHQgPSAncm9zZXMgYXJlIHJlZCxhbmQgdmlvbGV0cyBhcmUgYmx1ZS53aGF0ZXZlciB5b3UgZG8gaSdsbCBrZWVwIGl0IGZvciB5b3UuJzsKLy8gJHRleHQgPSAn0L/RgNC40LLQtdGCLtC10YHRgtGMIDIg0YTRg9C90LrRhtC40LgscHJlZ19zcGxpdCDQuCBleHBsb2RlICzQvdC1INC/0L7QvdC40LzQsNGOLNCyINGH0LXQvCDQvNC10LbQtNGDINC90LjQvNC4INGA0LDQt9C90LjRhtCwLic7CgokcHJlZyA9ICIjWyBdKlsuIT9dWyBdKiN1aSI7CiRwYXJ0cyA9IHByZWdfc3BsaXQoJHByZWcsICR0ZXh0LCAwLCBQUkVHX1NQTElUX05PX0VNUFRZKTsKCiRwYXJ0QWxsID0gJyc7Cgpmb3JlYWNoICgkcGFydHMgYXMgJHBhcnQpCnsKICAgICRmaXJzdCA9IG1iX3N1YnN0cigkcGFydCwgMCwgMSk7CiAgICAkbGFzdCA9IG1iX3N1YnN0cigkcGFydCwgMSk7CiAgICAkZmlyc3QgPSBtYl9zdHJ0b3VwcGVyKCRmaXJzdCk7CiAgICAkbGFzdCA9IG1iX3N0cnRvbG93ZXIoJGxhc3QpOwogICAgJHBhcnROID0gJGZpcnN0LiRsYXN0OwogICAgJHBhcnRBbGwgPSRwYXJ0QWxsLiRwYXJ0Ti4iLiAiOwoKLy8gICAgcHJpbnQoJHBhcnROKTsKICAgIC8v0J3RgyDRh9GC0L4uINCd0LUg0YHQvNC+0YLRgNC10Lsg0LXRidC1IGJsYWNrIG1lc2EuINCvINGB0L7QsdC40YDQsNC70YHRjyDRgdC60LDRh9Cw0YLRjCAs0L3QviDQstGB0LUg0LrQsNC6LdGC0L4g0L3QtdC60L7Qs9C00LAg0LHRi9C70L4uCn0KcHJpbnQoJHBhcnRBbGwpOwovL9CvINGB0L7QsdC40YDQsNC70YHRjyDRgdC60LDRh9Cw0YLRjCAs0L3QviDQstGB0LUg