Z pomocą przyszedł sed i jedna z najpopularniejszych powłok systemów uniksowych ;)
TMPFILE=./tmp.$$
for filename in *.php; do
sed -r 's/\$_POST\[(.*)\]/check($_POST\[\1\])/' $filename > $TMPFILE
mv $TMPFILE $filename # original file.
done
Może pokrótce opiszę samo polecenie sed:
-r - dzięki przełącznikowi, możemy używać rozszerzonych wyrażeń regularnych (extended regular expressions)
(.*) - grupa dowolnych znaków
\1 - grupa wyszukanych dowolnych znaków - (.*) - czyli wszystko to co zostało wyszukane jako część zmiennej $_POST[dokładnie_to]
Dzięki powyższemu ze wszystkim uporałem się w kilka minut.
Po konsultacji przykładu ze znajomym, lepszym pomysłem okazało się zastosowanie array_map w PHP, które pozwoliło na parsowanie wszystkich zmiennych $_POST jedną linijką :)
$_POST = array_map('check', $_POST);
Powyższą linijkę należy wkleić na samym początku aplikacji (index.php, head.php lub pliku z funkcjami - funkcje.php itp.) tak aby przerobić to na samym początku.
Brak komentarzy:
Prześlij komentarz
Proszę zostaw swój komentarz w celu dopowiedzenia tego czego ja nie wiedziałem lub wywołania ciekawej dyskusji. Wprowadziłem moderowanie komentarzy ze względu na dużą popularność bloga wśród różnych SEO botów :)