fork download
  1. <?php
  2. function engToRus($phrases){
  3. if (preg_match('/[a-z]/ui', $phrases)) {
  4. $pattern = array('/d/','/u/','/r/','/a/','/k/','/p/','/y/');
  5. $replacement = array('Д','У','Р','А','К','Р','У');
  6. return preg_replace($pattern, $replacement, $phrases);
  7. } else {
  8. return NULL; // А так можно?
  9. }
  10. }
  11.  
  12. function autoChange($phrases){
  13. echo "Было так - ".$phrases." \n";
  14. if(preg_match('/[a-z]/ui', $phrases)) {
  15. echo "А тут у нас латинские символы! \n";
  16. $newPhrase=engToRus ($phrases);
  17. //Тут такая ещё проверка, вдруг функция косячит!
  18. if(preg_match('/[a-z]/ui', $newPhrase)) {
  19. echo "Фраза всё-равно английская!{$newPhrase} \n";
  20. }
  21. else {
  22. // Получили лузультат ... дурак
  23. // Меняем дурак, на хороший человек
  24. $pattern = '/(дурак)/ui';
  25. $replacement = 'хороший человек';
  26. echo preg_replace($pattern, $replacement, $newPhrase) . " \n";
  27. }
  28. }
  29. elseif(preg_match('/дурак/ui', str_replace(" ","",$phrases))){
  30. echo "Пробелами шалим? \n";
  31. $pattern = '/(дурак)/ui';
  32. $replacement = ' хороший человек';
  33. echo "а потом Стало так ".preg_replace($pattern, $replacement, str_replace(" ","",$phrases))." \n";
  34. }
  35. else{
  36. $pattern = '/(дурак)/ui';
  37. $replacement = 'хороший человек';
  38. echo "а потом Стало так ".preg_replace($pattern, $replacement, $phrases)." \n>";
  39. }
  40. }
  41.  
  42. $checkArray = [
  43. 'Ну и ДY PAK', 'Вася дурак','ВоВа ДуРаК','Ирина дypak','Джонни д у р а к!!!','ты дурак'
  44. ];
  45.  
  46. echo "------------------------------------------- \n";
  47. $arCount=count($checkArray);
  48. for ($i=0;$i<$arCount;$i++){
  49. echo " ".autoChange($checkArray[$i])." \n";
  50. }
Success #stdin #stdout 0.01s 52488KB
stdin
Standard input is empty
stdout
------------------------------------------- 
Было так - Ну и ДY PAK 
А тут у нас латинские символы! 
Фраза всё-равно английская!Ну и ДY PAK 
  
Было так - Вася дурак 
Пробелами шалим? 
а потом Стало так Вася хороший человек 
  
Было так - ВоВа ДуРаК 
Пробелами шалим? 
а потом Стало так ВоВа хороший человек 
  
Было так - Ирина дypak 
А тут у нас латинские символы! 
Ирина хороший человек 
  
Было так - Джонни д у р а к!!! 
Пробелами шалим? 
а потом Стало так Джонни хороший человек!!! 
  
Было так - ты дурак 
Пробелами шалим? 
а потом Стало так ты хороший человек