Jednolinijkowiec na dziś:
grep -Z -r -L --include \*.php -P "strict_types=1" src/ | xargs -0 -l sed -i 's/<?php/<?php\n\ndeclare(strict_types=1);/g'
To polecenie wyszuka wszystkie pliki z rozszerzeniem php, które nie zawierają ciągu strict_types=1
, a następnie doda declare(strict_types=1);
zaraz po otwierającym znaczniku <?php
. Żeby tylko wyszukać pliki, które nie mają strict_types=1
można użyć:
grep -r -L --include \*.php -P "strict_types=1" src/
Taki automat może się przydać przy modernizacji starszej aplikacji, warto jednak mieć dobre testy, bo taka trywialna zmiana może skutecznie ją wyłożyć.