23/12 5.10 Pubblicata la guida su come Realizzare una tabella con newsboard realizzata da Scorpy87 15/12 4.15 Pubblicata la Guida per rendere un plugin compatibile con tutte le versioni di Firefox realizzata da Logan 20/11 3.20 Pubblicato il secondo aggiornamento della Raccolta di funzioni Php realizzato da [Antonio] 17/11 4.15 Pubblicata la guida su come realizzare un Css dock-menu realizzata da Scorpy87 29/10 2.30 Aggiunta alla Guida all'installazione in locale realizzata da Logan la Guida all'installazione di Wikipedia 23/9 2.10 Conclusa affiliazione con Nds-Site.com Forum Staff | Blog | Sito

Closed
Raccolta di funzioni Php
view post Posted on 28/8/2009, 11:09Quote
Avatar


Group: NB SuperMod
Posts: 4011
Location: Torino


Status: Offline: ultima azione eseguita il 26/12/2009, 16:45


Questa discussione ha lo scopo di raccogliere una serie di funzioni in Php che potrete utilizzare nei vostri script.
Potete creare voi stessi le funzioni oppure copiarle da altri siti (purchè sia specificato l'autore della funzione) e richiedere l'inserimento nella discussione Partecipa a Guide e Codici.

Qui sotto troverete dei links utili per la creazione delle vostre funzioni:
PHP: User-defined functions - Manual
Scrivere funzioni personalizzare - Guida PHP di Html.it
Le funzioni personalizzate - PHPNews.it


«Accidenti, Slash è proprio rock. Sì insomma, capisci quello che voglio dire?
Non dico punk, metal o house, parlo di rock; e non un rock poco rock, ma vero rock rock.
Un rock che ti entra nelle vene e ti penetra nell'anima senza lasciarti andare... proprio rock insomma.
L'house, il metal e il punk sono lenti. Slash è rock.»


(Adriano Celentano su Slash)
 
P_MSG P_WEBSITE Top
view post Posted on 28/8/2009, 12:47Quote
Avatar


Group: NB SuperMod
Posts: 4011
Location: Torino


Status: Offline: ultima azione eseguita il 26/12/2009, 16:45



Lista elementi di una directory

Parametri necessari: nessuno
Parametri opzionali: directory
Restituisce: array

CODICE
function lista( $dir='.' )
{
       $dir = ( is_dir( $dir ) ) ? $dir : '.';
       if ( $open = opendir( $dir ) )
       {
                while ( false !== ( $file = readdir( $open ) ) )
               {
                        if ( $file != '.' && $file != '..' )
                       {
                               $list[] = $file;
                       }
               }
               closedir($open);
       }
       return $list;
}





Validità email

Parametri necessari: indirizzo email
Parametri opzionali: nessuno
Restituisce: valore booleano

CODICE
function check_email( $address )
{
       return eregi( "^[_a-z0-9+-]+(\.[_a-z0-9+-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)+$", $address );
}





Validità url

Parametri necessari: url
Parametri opzionali: nessuno
Restituisce: valore booleano

CODICE
function check_url( $url )
{
       // Regexp prelevata da Wikipedia.org
       return preg_match( "/^((http(s)?:\/\/)|(www\.))([a-z0-9][-.a-z0-9]+)((\.[a-z]{2,4})[?\/]?)([?\/][-_~;:.,'*^+()=!|?£§$%&#A-Za-z0-9\/]*)?$/", $url );
}





Sorgente pagina

Parametri necessari: url
Parametri opzionali: nessuno
Restituisce: stringa

CODICE
function sorgente( $url )
{
       // Regexp prelevata da Wikipedia.org
       if ( preg_match( "/^((http(s)?:\/\/)|(www\.))([a-z0-9][-.a-z0-9]+)((\.[a-z]{2,4})[?\/]?)([?\/][-_~;:.,'*^+()=!|?£§$%&#A-Za-z0-9\/]*)?$/", $url ) )
       {
               return implode( '', file( $url ) );
       }
}





Browser

Parametri necessari: nessuno
Parametri opzionali: nessuno
Restituisce: stringa

CODICE
function browser()
{
       $browser = array(
                                        "Explorer" => "MSIE",
                                        "FireFox"         => "FireFox",
                                        "Chrome" => "Chrome",
                                        "Safari" => "Safari",
                                        "Lynx" => "Lynx",
                                        "Opera" => "Opera",
                                        "WebTV" => "WebTV",
                                        "Konqueror" => "Konqueror",
                                        "Bot" => "bot|Google|slurp|scooter|spider|infoseek",
                                        "Netscape" => "Nav|Gold|x11|Netscape",
                                        );
       
       foreach( $browser as $k => $v )
       {
               if ( eregi( $v, $_SERVER['HTTP_USER_AGENT'] ) )
               {
                       return $k;
               }
       }
       return "Sconosciuto";
}





Sistema operativo

Parametri necessari: nessuno
Parametri opzionali: nessuno
Restituisce: stringa

CODICE
function sistema()
{
       $sistemi = array(
                                        "Windows XP" => "Windows NT 5.1",
                                        "Windows Vista" => "Windows NT 6.0",
                                        "Windows 2000" => "Windows NT 5.0",
                                        "Windows ME" => "Windows NT 4.90",
                                        "Windows 95" => "Win95",
                                        "Windows 98" => "Win98",
                                        "Windows NET" => "Windows NT 5.2",
                                        "Windows NT" => "WinNT4.0",
                                        "Mac" => "Mac|PPC",
                                        "Linux" => "Linux",
                                        "FreeBSD" => "FreeBSD",
                                        );

       foreach( $sistemi as $k => $v )
       {
               if ( eregi( $v, $_SERVER['HTTP_USER_AGENT'] ) )
               {
                       return $k;
               }
       }
       return "Sconosciuto";
}





Indirizzo referente

Parametri necessari: nessuno
Parametri opzionali: nessuno
Restituisce: stringa

CODICE
function referer()
{
       if ( $_SERVER['HTTP_REFERER'] )
       {
               $exp = explode( '/', $_SERVER['HTTP_REFERER'] );
               return "<a target='_blank' href='{$_SERVER['HTTP_REFERER']}'>{$exp[2]}</a>";
       }
}





Password casuale

Parametri necessari: nessuno
Parametri opzionali: lunghezza password
Restituisce: stringa

CODICE
function password( $lenght=8 )
{
       $lenght = ( ( $lenght > 32 ) || ( $lenght < 1 ) ) ? 8 : $lenght;
       $gen        = md5( sha1( rand( 0, 999999 ) . time() ) );
       return substr( $gen, 0, $lenght );
}


«Accidenti, Slash è proprio rock. Sì insomma, capisci quello che voglio dire?
Non dico punk, metal o house, parlo di rock; e non un rock poco rock, ma vero rock rock.
Un rock che ti entra nelle vene e ti penetra nell'anima senza lasciarti andare... proprio rock insomma.
L'house, il metal e il punk sono lenti. Slash è rock.»


(Adriano Celentano su Slash)
 
P_MSG P_WEBSITE Top
view post Posted on 31/8/2009, 03:13Quote
Avatar


Group: NB SuperMod
Posts: 4011
Location: Torino


Status: Offline: ultima azione eseguita il 26/12/2009, 16:45


Redirect

Parametri necessari: url
Parametri opzionali: secondi (int), testo (string)
Restituisce: testo (se inserito)

CODICE
function redirect( $url, $secondi=0, $testo='' )
{
       if ( $secondi > 0 )
       {
               header( "Refresh: {$secondi};URL={$url}" );
               if ( !empty( $testo ) )
               {
                       echo $testo;
               }
       }
       else
       {
               header( "Location: {$url}" );
       }
       exit();
}





Rimozione tags HTML

Parametri necessari: testo
Parametri opzionali: tag da rimuovere
Restituisce: stringa

CODICE
function rimuovi_tags( $testo, $tag='' )
{
       $tag = ( $tag != '' ) ? $tag : '.*';
       $txt = preg_replace( '/<('.$tag.')(.*)>/U', '', $testo );
       $txt = preg_replace( '/<\/('.$tag.')>/U', '', $txt );
       return $txt;
}





Rimozione commenti HTML

Parametri necessari: testo
Parametri opzionali: nessuno
Restituisce: stringa

CODICE
function rimuovi_commenti( $testo )
{
       return preg_replace( '/<!--(.*)-->/U', '', $testo );
}





Generatore tabelle

Parametri necessari: nessuno
Parametri opzionali: colonne (int), righe (int), border (int), cellpadding (int), cellspacing (int)
Restituisce: stringa

CODICE
function crea_tabella( $colonne=2, $righe=1, $border=0, $cellpadding=0, $cellspacing=0 )
{
       $colonne = ( $colonne > 0 ) ? $colonne : 2;
       $righe         = ( $righe > 0 ) ? $righe : 1;
       $table  .= "<table border='{$border}' cellpadding='{$cellpadding}' cellspacing='{$cellspacing}'> \n";
       for ( $i = 1; $i <= $righe; ++$i )
       {
               $table .= "<tr title='RIGA{$i}'>\n";
               for ( $r = 1; $r <= $colonne; ++$r )
               {
                       $table .= "<td>COLONNA {$r}</td>\n";
               }
               $table .= "</tr>\n";
       }
       $table  .= "</table>";
       return $table;
}





Scrittura file

Parametri necessari: nome del file, contenuto
Parametri opzionali: nessuno
Restituisce: nulla

CODICE
function scrivi_file( $file, $contenuto )
{
       if ( file_exists( $file ) )
       {
               echo 'Il file esiste già!';
               return;
       }
       $fp        = fopen( $file, 'w' );
       fwrite( $fp, $contenuto );
       fclose( $fp );
}


«Accidenti, Slash è proprio rock. Sì insomma, capisci quello che voglio dire?
Non dico punk, metal o house, parlo di rock; e non un rock poco rock, ma vero rock rock.
Un rock che ti entra nelle vene e ti penetra nell'anima senza lasciarti andare... proprio rock insomma.
L'house, il metal e il punk sono lenti. Slash è rock.»


(Adriano Celentano su Slash)
 
P_MSG P_WEBSITE Top
view post Posted on 20/11/2009, 03:22Quote
Avatar


Group: NB Friend
Posts: 4524
Location: Ottotornante °°


Status: Offline: ultima azione eseguita il 26/12/2009, 01:38


Converte tutte le lettere accentate in entità HTML

Parametri necessari: Stringa
Parametri opzionali: nessuno
Restituisce: Stringa codificata con entità HTML delle lettere accentate

CODICE
function charsEncode($string) {
       if(is_string($string)) {
               $chars = array(
               "&agrave;" => "à", "&aacute;" => "á",
               "&Agrave;" => "À", "&Aacute;" => "Á",
               
               "&egrave;" => "è", "&eacute;" => "é",
               "&Egrave;" => "È", "&Eacute;" => "É",
               
               "&igrave;" => "ì", "&iacute;" => "í",
               "&Igrave;" => "Ì", "&Iacute;" => "Í",
               
               "&ograve;" => "ò", "&oacute;" => "ó",
               "&Ograve;" => "Ò", "&Oacute;" => "Ó",
               
               "&ugrave;" => "ù", "&uacute;" => "ú",
               "&Ugrave;" => "Ù", "&Uacute;" => "Ú",
               );
               foreach($chars as $ind => $value) {
                       $string = str_replace($value, $ind, $string);
               }
               return $string;
       }
       else
               return "Il paramentro dev'essere una stringa";
}







Rimuove i ritorni a capo

Parametri necessari: Stringa
Parametri opzionali: nessuno
Restituisce: Stringa senza ritorni a capo

CODICE
function removeNewLines($string) {
       if(is_string($string))
               return str_replace(array("\n", "\r"), "", $string);
       else
               return "Il paramentro dev'essere una stringa";
}







Data corrente in italiano con opzioni personalizzabili

Parametri necessari: (bool) Data Numerica o testuale
Parametri opzionali: (bool)Giorno, (bool)Mese, (bool)Anno, (bool)Ore, (bool)Minuti, (bool)Secondi, (string)SeparatoreData, (string)SeparatoreTempo
Restituisce: Data in base ai parametri dati

CODICE
function data($string, $day = true, $month = true, $year = true, $hour = true, $minute = true, $second = true, $dSep = "/", $tSep = ":") {
       $now = getdate();
       $data = "";
       if($string == true) {
               if($day == true) {
                       $giorni = array("Monday" => "Lunedì", "Tuesday" => "Martedì", "Wednesday" => "Mercoledì", "Thursday" => "Giovedì", "Friday" => "Venerdì", "Saturday" => "Sabato", "Sunday" => "Domenica");
                       foreach($giorni as $ind => $value) {
                               if($now['weekday'] == $ind) {
                                       $data .= $value;
                                       break;
                               }
                       }
                       $data .= " " . $now['mday'];
               }
               if($month == true) {
                       $mesi = array("January" => "Gennaio", "Febraury" => "Febbraio",        "March" => "Marzo", "April" => "Aprile", "May" => "Maggio", "June" => "Giugno", "July" => "Luglio", "August" => "Agosto", "September" =>  "Settembre", "October" => "Ottobre", "November" => "Novembre", "December" => "Dicembre");
                       foreach($mesi as $ind => $value) {
                               if($now['month'] == $ind) {
                                       $data .= " " . $value;
                                       break;
                               }
                       }
               }
               if($year == true)
                       $data .= " " . $now['year'];
       }
       else {
               $anno = $year ? $dSep . $now['year'] : '';
               $mese = $month ? $now['mon'] <= 9 ? $dSep . "0" . $now['mon'] : $dSep . $now['mon'] : '';
               $giorno = $day ? $now['mday'] <= 9 ? "0" . $now['mday'] : $now['mday'] : '';
               $data .= $giorno . $mese . $anno;
       }
       $ore = $hour ? $now['hours'] <= 9 ? "0" . $now['hours'] : $now['hours'] : '';
       $minuti = $minute ? $now['minutes'] <= 9 ? $tSep . "0" . $now['minutes'] : $tSep . $now['minutes'] : '';
       $secondi = $second ? $now['seconds'] <= 9 ? $tSep . "0" . $now['seconds'] : $tSep . $now['seconds'] : '';
       $data .= " " . $ore . $minuti . $secondi;
       return $data;
}

Esempi pratici:
CODICE
//Schema : data(Lettere?True:False, Giorno?true:false, Mese?true:false, Anno?true:false, Ore?true:false, Minuti?true:false, Secondi?true:false, SeparatoreData, SeparatoreTempo);

echo data(true, false, false, false); //Formato stringa, Ore:Minuti:Secondi
echo data(false); //Formato numerico, Giorno/Mese/Anno Ore:Minuti:Secondi
echo data(true); //Formato stringa, NomeDelGiorno NumeroDelGiorno NomeDelMese Anno Ore:Minuti:Secondi
echo data(true, true, true, true, false, false, false); //Formato Stringa, NomeDelGiorno NumeroDelGiorno NomeDelMese Anno
echo data(false, true, true, true, true, true, true, "-", " "); //Formato numerico con separatori definiti, Giorno-Mese-Anno Ore Minuti Secondi


Azzurra.org - [Antonio] - DarkStyle
[Bnc by Hypnotize - http://ipv6.different-world.org]

@#shiny_ditto_page - @#ffmag - @#F2 - @#nightbar - @#quizziego - +#graficadigitale - +#ircoff - #forumfree - #pokemon_city - #italia

/join #channel image
 
P_MSG P_WEBSITE Top
3 replies since 28/8/2009, 11:09
 
Closed

Fast reply

You need to register in order to post: click here