non è propriamente un 'offuscatore ma rende la vita difficile ai copioni e alleggerisce i files dai commenti, più propriamente qualsiasi cosa il php non legge/esegue viene eliminata
<?php
class revise {
function __construct($target = '') {
/* Generate an iterator starting at target path folder */
$dirs = new RecursiveDirectoryIterator((string) $target);
$list = new RecursiveIteratorIterator($dirs);
/* NB $list is not an array */
$this->list = $list;
}
/**
* Run throught iteration and execute an action/function on file
*
* @return bool
*/
public function clean($type='') {
foreach ($this->list as $path =>$ignore) {
if (is_file($path) ){
if($type != ''){
$file = end( explode('/',$path) );
$ext = end( explode('.',$file) );
if($ext === $type){
$this->doClean($path);
}
} else {
$this->doClean($path);
}
}
}
return true;
}
private function doClean($path=''){
if(isset($path) && $path != ''){
$stripped = php_strip_whitespace($path);
$fp = fopen($path, 'w');
if(!fwrite($fp, $stripped)){
print('no scritto');
}
fclose($fp);
}
return true;
}
}
#### Pulisce tutti i commenti ed elimina tutti gli spazi vuoti nel codice
$path = '';
$test = new revise($path);
$test->clean('php');
non centra con joomla, basta copiarlo in un file e richiamare il file dopo averlo configurato.
ATTENZIONE alla path che inserite perchè non c'è la "sicura" ... se spara.. spara!
PS: ma che bella è questa funzione di php! Non tocca i files del template perchè agisce solo tra <?php e ?> ... se ci ragionavo un po' potevo anche arrivarci invece è stata una piacevole sorpresa.
In questo modo se si pulisce un estensione di joomla, chi la usa può usufruire di codice ordinato e commentato per gli override