<?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)
{
    $first = mb_substr($part, 0, 1);
    $last = mb_substr($part, 1);
    $first = mb_strtoupper($first);
    $last = mb_strtolower($last);
    $partN = $first.$last;
    $partAll =$partAll.$partN.". ";

//    print($partN);
    //Ну что. Не смотрел еще black mesa. Я собирался скачать ,но все как-то некогда было.
}
print($partAll);
//Я собирался скачать ,но все 