Salve a tutti, voglio mostrarvi alcune funzioni per fare cose di cui in php non ne esiste una funzione relativa.
Leggere i file in una directory e memorizzarli su array:
Codice PHP:
function listdir($d) {
if($h = @opendir($d)) {
while(false !== $f = @readdir($h)) {
if($f != "." && $f != "..") {
$ar[] = $f;
}
}
}else
return false;
if(!isset($ar))
return false;
else
return $ar;
}
poi per sapere se è un file od una directory fate n if con is_dir.
Costruire un array con in ogni elemento un pezzo di una stringa:
Codice PHP:
function array_str($s) {
$len = strlen($s);
for($i = 0; $i <= $len; $i++) {
$ar[] = substr($s, $i, 1);
}
return $ar;
}
Copiare una cartella intera con le relative sottocartelle e i relativi file in tutte le sottocartelle e nella dir pricipale:
Codice PHP:
function copydir($source, $dest) {
if(!is_dir($source)) {
return false;
exit;
}
if(is_dir($dest)) {
return false;
exit;
}
if(!mkdir($dest)) {
return false;
exit;
}
if(!$handle = opendir($source)) {
return false;
exit;
}else{
$source = (substr($source, -1, 1) != "/") ? $source : (substr($source, 0, strlen($source) - 1));
$dest = (substr($dest, -1, 1) != "/") ? $dest : (substr($dest, 0, strlen($dest) - 1));
while(false !== $file = readdir($handle)) {
if($file != "." && $file != "..") {
if(is_dir($source . "/" . $file)) {
copydir($source . "/" . $file, $dest . "/" . $file);
continue;
}
if(is_file($source . "/" . $file)) {
if(!is_readable($source . "/" . $file)) {
continue;
}
if(@copy($source . "/" . $file, $dest . "/" . $file)) {
continue;
}else{
continue;
}
}
}
}
closedir($handle);
}
return true;
}
rileva il titolo di una pagina remota (esigenza abbastanza richiesta):
Codice PHP:
function pagetitle($url) {
$contents = file($url);
foreach($contents as $line) {
if(preg_match("/^<title>(.*?)<\\/title>$/", $line)) {
$title = preg_replace("/^<title>(.*?)<\\/title>$/", "\\\\1", $line);
}
}
return $title;
}