<?php
$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 ,не понимаю,в чем между ними разница.';
/* Делает первую букву предложения заглавной */
function makeFirstletterUppercase( & $parts ) {
$letters = mb_substr ( $parts , 0 , 1 ) ; //выделяем первую букву $upLetters = mb_strtoupper ( $letters ) ; //переводим ее в верхний регистр $parts = mb_substr ( $parts , 1 ) ; //вделяем предложение кроме первой буквы $parts = $upLetters . $parts ; //"склеиваем" результат
}
function fixText( $text ) {
$regexp = '/( *)([,.;:])( *)/' ;
$parts = explode ( "." , $text ) ; //разбиваем текст на предложения
/* по идее надо еще разбивать в ? и !, но не понял как можно их в explode запихать */
foreach ( $parts as & $value ) { //удаление пробелов в начале и конце строк
}
//array_walk($parts, 'makeFirstLetterUppercase'); //замена первых букв предложений на заглавные
$result = implode ( ". " , $parts ) ; //объединение предложений в строку return $result ;
}
$result = fixText( $text ) ;
echo "{$result} \n " ;
PD9waHAKIAplcnJvcl9yZXBvcnRpbmcoLTEpOwptYl9pbnRlcm5hbF9lbmNvZGluZygndXRmLTgnKTsKIAokdGV4dCA9ICLQvdGDINGH0YLQvi4gICAgICDQvdC1INGB0LzQvtGC0YDQtdC7INC10YnQtSBibGFjayBtZXNhLtGPINGB0L7QsdC40YDQsNC70YHRjyDRgdC60LDRh9Cw0YLRjCAgLNC90L4g0LLRgdC1INC60LDQui3RgtC+INC90LXQutC+0LPQtNCwINCx0YvQu9C+LiI7Ci8vJHRleHQgPSAicm9zZXMgYXJlIHJlZCxhbmQgdmlvbGV0cyBhcmUgYmx1ZS53aGF0ZXZlciB5b3UgZG8gaSdsbCBrZWVwIGl0IGZvciB5b3UuIjsKLy8kdGV4dCA9ICfQv9GA0LjQstC10YIu0LXRgdGC0YwgMiDRhNGD0L3QutGG0LjQuCxwcmVnX3NwbGl0INC4IGV4cGxvZGUgLNC90LUg0L/QvtC90LjQvNCw0Y4s0LIg0YfQtdC8INC80LXQttC00YMg0L3QuNC80Lgg0YDQsNC30L3QuNGG0LAuJzsKIAovKiDQlNC10LvQsNC10YIg0L/QtdGA0LLRg9GOINCx0YPQutCy0YMg0L/RgNC10LTQu9C+0LbQtdC90LjRjyDQt9Cw0LPQu9Cw0LLQvdC+0LkgKi8KZnVuY3Rpb24gbWFrZUZpcnN0bGV0dGVyVXBwZXJjYXNlKCYkcGFydHMpIHsKICAgICRsZXR0ZXJzID0gbWJfc3Vic3RyKCRwYXJ0cywgMCwgMSk7IC8v0LLRi9C00LXQu9GP0LXQvCDQv9C10YDQstGD0Y4g0LHRg9C60LLRgwogICAgJHVwTGV0dGVycyA9IG1iX3N0cnRvdXBwZXIoJGxldHRlcnMpOyAvL9C/0LXRgNC10LLQvtC00LjQvCDQtdC1INCyINCy0LXRgNGF0L3QuNC5INGA0LXQs9C40YHRgtGACiAgICAkcGFydHMgPSBtYl9zdWJzdHIoJHBhcnRzLCAxKTsgLy/QstC00LXQu9GP0LXQvCDQv9GA0LXQtNC70L7QttC10L3QuNC1INC60YDQvtC80LUg0L/QtdGA0LLQvtC5INCx0YPQutCy0YsKICAgICRwYXJ0cyA9ICR1cExldHRlcnMgLiAkcGFydHM7IC8vItGB0LrQu9C10LjQstCw0LXQvCIg0YDQtdC30YPQu9GM0YLQsNGCCn0KIApmdW5jdGlvbiBmaXhUZXh0KCR0ZXh0KSB7CiAgICAkcmVnZXhwID0gJy8oICopKFssLjs6XSkoICopLyc7CiAgICAkcGFydHMgPSBleHBsb2RlKCIuIiwgJHRleHQpOyAvL9GA0LDQt9Cx0LjQstCw0LXQvCDRgtC10LrRgdGCINC90LAg0L/RgNC10LTQu9C+0LbQtdC90LjRjwogICAgCiAgICAvKiDQv9C+INC40LTQtdC1INC90LDQtNC+INC10YnQtSDRgNCw0LfQsdC40LLQsNGC0Ywg0LIgPyDQuCAhLCDQvdC+INC90LUg0L/QvtC90Y/QuyDQutCw0Log0LzQvtC20L3QviDQuNGFINCyIGV4cGxvZGUg0LfQsNC/0LjRhdCw0YLRjCAqLwogICAgZm9yZWFjaCAoJHBhcnRzIGFzICYkdmFsdWUpIHsgLy/Rg9C00LDQu9C10L3QuNC1INC/0YDQvtCx0LXQu9C+0LIg0LIg0L3QsNGH0LDQu9C1INC4INC60L7QvdGG0LUg0YHRgtGA0L7QugoJICAgICAkcGFydHMgPSB0cmltKCRwYXJ0cyk7CiAgICB9Cgl2YXJfZHVtcCgkcGFydHMpOwoJYXJyYXlfd2FsaygkcGFydHMsICdtYWtlRmlyc3RMZXR0ZXJVcHBlcmNhc2UnKTsKICAgIC8vYXJyYXlfd2FsaygkcGFydHMsICdtYWtlRmlyc3RMZXR0ZXJVcHBlcmNhc2UnKTsgLy/Qt9Cw0LzQtdC90LAg0L/QtdGA0LLRi9GFINCx0YPQutCyINC/0YDQtdC00LvQvtC20LXQvdC40Lkg0L3QsCDQt9Cw0LPQu9Cw0LLQvdGL0LUKICAgICRyZXN1bHQgPSBpbXBsb2RlKCIuICIsICRwYXJ0cyk7IC8v0L7QsdGK0LXQtNC40L3QtdC90LjQtSDQv9GA0LXQtNC70L7QttC10L3QuNC5INCyINGB0YLRgNC+0LrRgwogICAgJHJlc3VsdCA9IHByZWdfcmVwbGFjZSgkcmVnZXhwLCAnJDIgJywgJHRleHQpOwogICAgcmV0dXJuICRyZXN1bHQ7Cgp9CgokcmVzdWx0ID0gZml4VGV4dCgkdGV4dCk7CmVjaG8gInskcmVzdWx0fVxuIjs=
stdout
NULL
ну что. не смотрел еще black mesa. я собирался скачать, но все как-то некогда было.
stderr
PHP Warning: trim() expects parameter 1 to be string, array given in /home/2WwBpt/prog.php on line 24
PHP Warning: Invalid argument supplied for foreach() in /home/2WwBpt/prog.php on line 23
PHP Warning: array_walk() expects parameter 1 to be array, null given in /home/2WwBpt/prog.php on line 27
PHP Warning: implode(): Invalid arguments passed in /home/2WwBpt/prog.php on line 29