Kod wygenerowany przez ten skrypt wystarczy zapisać jako plik .php i uruchomić z poziomu serwera WWW.
Nie ma w tym nic wymyślnego, ale daje ładny efekt i przydaje się, gdy ktoś chce wdostępnić plik php łącznie z plikami binarnymi, a chciałby to mieć w 1 pliku tekstowym...
<?php
/**
* Prosty instalator
* @author Krzysztof Andrzej Błachut
* @copyright (C) 2004 Krzysztof Andrzej Błachut
* @email bakus@idn.net.pl
*/
function code($file)
{
print '/* ' . $file . ' */' . \"n\"; $d = fopen($file, \"rb\"); $data = '';
{
}
print '$d = '' . wordwrap(base64_encode($data), 80, \"'n
.'\", true) . \"';n
\"; print '$fh = fopen(\"' . $file . '\", \"wb\");' . \"n\"; print 'fwrite($fh, base64_decode($d));' . \"n\"; print 'fclose($fh);' . \"n\"; print 'print \"Wypakowano plik ' . $file . '<br />n\";' . \"n\"; }
print '<?php' . \"n\"; code(\"plik.php\");
code(\"plik.jpg\");
print 'print \"<b>Wszystkie pliki zostały wypakowane</b><br />n\";' . \"n\"; ?>
Przykładowy wynik (zostal skrócony):
<?php
/* show_token.php */
$d = 'PD9waHAKLyoKICogQGF1d5c3p0b2YgkcnplaiBCs2FjaHV0CiAqIEBjb3B5cmlnaHQg'
.'KEMpIDIwMDUgS3J6eXZHJ6ZWoghY2h1dAogKiBAZW1haWwgYmFrdXNAaWRuLm5ldC5w'
.'bAogKi8KCiAgICBpZihlBPU1RbInEipCiAgICB7CiAgICAgICAgJG1kNSA9IG1kNSht'
.'Lz4nOwogICAgfQo/Pg==';
$fh = fopen(\"show_token.php\", \"wb\"); print \"Wypakowano plik show_token.php<br />n\"; print \"<b>Wszystkie pliki zostały wypakowane</b><br />n\" ?>