phpbar.de logo

Mailinglisten-Archive

[php] =?iso-8859-1?Q?Re:_=5Bphp=5D_Re:_=5Bphp=5D_verschl=FCsseln_von_skripten?=

[php] Re: [php] Re: [php] verschlüsseln von skripten

Cyrill Schumacher php_(at)_phpcenter.de
Fri, 20 Jul 2001 15:32:57 +0200


>>und mit was komprimierst du das ganze?
>Wenn ich spekulieren dürfte.
>Wenn er alle unnötigen Leerzeichen und Kommentare entfernt,
>hat er das Ding "komprimiert".

>Es gibt doch diese Wettbewerbe bei dem die Teilnehmer versuchen
>einen funktionierenden Code für ein vorgegebenes Problem, so zu
>schreiben das keiner mehr durchblickt.

jepp, so han i des gmeint.

anbei ein schneller hack:

<html>
<head>
<title>Compressor</title>
</head><body>
<?php

error_reporting(E_ALL);

$handle=opendir("./");
while ($files = readdir($handle)) {
 if( is_file($files)==true && preg_match("/^cms.*/i",$files)==true ) {

 $filesize_old = filesize($files);

 $file = implode("",file($files));

 $file = preg_replace("=/\*.*\*/=msU","",$file);
 $file = preg_replace("/;\s+/ms",";",$file);
 $file = preg_replace("/\s+/"," ",$file);   /* [ \t\n\r\f] */
 $file = preg_replace("/>\s+</","><",$file);

/*******

 funzt theoretisch problemlos
 verlangsamt den PHP parser um ca. 0.1 - 0.2 sekunden
 und gibt probleme mit dem code ...

 jedoch kann man ev. die = und != und == lassen

vorher:
preg_replace("/( or )$/","",$wp)

nachher:
preg_replace("/(or)$/","",$wp)


 $file = preg_replace("=(\s+)?\{(\s+)=","{",$file);
 $file = preg_replace("=(\s+)?\}(\s+)=","}",$file);

 $file = preg_replace("=(\s+)?\((\s+)=","(",$file);
 $file = preg_replace("=(\s+)\)(\s+)?=",")",$file);

 $file = preg_replace("/(\s+)?=(\s+)/","=",$file);
 $file = preg_replace("/(\s+)?==(\s+)/","==",$file);
 $file = preg_replace("/(\s+)?!=(\s+)/","!=",$file);

 $file = str_replace("<?php}","<?php }",$file);
***************/
 /* damit das copyright reinkommt */
 $file = preg_replace("=^(\s*<\?php)=","",$file);

 $fp = fopen($files,"w+");

 if( preg_match("=(htm(l?))$=",$files) != true ){

  fwrite($fp,( preg_match("=(js)$=",$files) == true ? "" : "<?php" ).'

/************************
*
* This Software bla bla bla
***********************/
');

 }

 fwrite($fp,$file);

 fclose($fp);
 clearstatcache();

 $filesize_new = filesize($files);

 $compressed = 100 - (($filesize_new * 100) / $filesize_old);

 echo "Done: $files - Compressrate: ".sprintf("%.3f",$compressed)."
%<br>\n";

 flush();
 }
}
closedir($handle);



?>
</body></html>



php::bar PHP Wiki   -   Listenarchive