Skip to content

Instantly share code, notes, and snippets.

Created August 1, 2011 06:37
Show Gist options
  • Save anonymous/1117665 to your computer and use it in GitHub Desktop.
Save anonymous/1117665 to your computer and use it in GitHub Desktop.
script to parse PHP short open tags and convert ones to normal
find project/dir/ -type f -iname "*.php" -exec php -d short_open_tag=On the_script.php {} \;
<?php
$file=$argv[1];
echo "Replacing short open tags in \"$file\"...";
$content = file_get_contents($file);
$tokens = token_get_all($content);
$output = '';
foreach($tokens as $token) {
if(is_array($token)) {
list($index, $code, $line) = $token;
switch($index) {
case T_OPEN_TAG_WITH_ECHO:
$output .= '<?php echo ';
break;
case T_OPEN_TAG:
$output .= '<?php ';
break;
default:
$output .= $code;
break;
}
}
else {
$output .= $token;
}
}
file_put_contents($file, $output);
@jeff1326
Copy link

jeff1326 commented Aug 3, 2016

See my fork to improve your

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment