<?php

error_reporting(-1);

function grammar($text) {
	$rules = array(
	'/.{3}?[,.!?:;][^ ].{3}?/ui' => "Нет пробела после знака препинания", 
	'/.{3}?[жш]ы.{3}?/ui' => "Ж и Ш пишутся с буквой И", 
	'/.{3}?[^.,!?] (а|но).{3}?/ui' => "Нет знака препинания перед А или НО",
	'/.{3}?(сдесь|координально|зделаю).{3}?/ui' => "Неправильно написано слово" 
	);
	foreach ($rules as $regexp => $desc) {
		$matches = array();
		if (preg_match_all($regexp, $text, $matches)) {
			$imp = implode(" и вот тут -", $matches[0]);
			echo "{$desc} вот тут - {$imp} \n";
		}
	}
}
$text = "Алах вилик!а я сука, но не азаза. !Жырная жопа жи. Сдесь .";
$test = grammar($text);