Nel 2009 , Enterprise PHP Magazine stimati circa un milione di CV sono stati in linea appartenenti alla programmatori PHP . Soprattutto in ambiente collaborativo e sociale online di oggi, i programmatori PHP condividere conoscenze , suggerimenti e trucchi con l'altro per aiutare i nuovi ed esperti programmatori simili. Trucchi PHP sono di solito modi per affrontare un problema o di codifica trucchi che rendono una sceneggiatura migliore , migliorando le prestazioni dello script , prendendo meno tempo per codice , riducendo la dimensione del codice o di aumentare la leggibilità del codice . E ' utile per i programmatori PHP , anche molto esperti per esaminare i trucchi di volta in volta e al recepimento nel proprio codice in modo che non si dimenticano . O tra le dichiarazioni
Se si sta verificando un codice di ritorno booleano da una funzione e intervenire sul risultato , spesso è possibile scrivere un'istruzione più compatta usando "o" che è anche più facile da leggere rispetto un modo tradizionale di codifica del confronto . Si consideri ad esempio il seguente codice che tenta di connettersi a un server di database MySQL e chiude il programma se la connessione non è stato fatto con successo :
$ DBC = mysql_connect_db ( " localhost " , $ username , $ password) , se {die (); }
È possibile scrivere la stessa istruzione su una singola linea collegando le dichiarazioni con ( $ DBC ! ) " oppure : "
$ DBC = mysql_connect_db ( "localhost" , $ username , $ password) or die ();
sopprimendo MySQL Errore
nell'esempio precedente , se la connessione al database non è riuscita , prima dell'applicazione muore, l'estensione PHP MySQL produrrà un messaggio molto tecnico errore sullo schermo , per esempio :
Attenzione : Accesso negato per l'utente : johndoe@209-60-17-119.nrp1.mx . ny.frontiernet.net ( using password : Sì) in /var /www /application /html /database.php sulla linea 6
Questo messaggio di errore viene emesso per l'utente , anche se PHP errore di messaggistica è acceso off . Per nascondere il messaggio di errore da parte degli utenti , prefisso di una chiamata di funzione di MySQL con il simbolo "@ " e messaggi di errore MySQL verranno soppressi per tale chiamata . Per inserire il proprio messaggio di errore , passare una stringa alla funzione di "morire" . Per esempio :
$ DBC = @ mysql_connect_db ( " localhost " , $ username , $ password) or die (" ! Impossibile connettersi al server di database ");
< br > con Restituzione Immagini
Ci possono essere casi in cui si desidera ripristinare l'immagine , piuttosto che HTML , come ad esempio in un servizio Web . Potete farlo inserendo un header " Content-type " per specificare che l'uscita è l'immagine e usando la funzione " readfile " per riportare il contenuto del file di immagine . Tornare in HTML con l'emissione di un "Content- Type" per l'HTML . Per esempio :
< php ... colpo di testa ? ( "Content -type: image /gif" ) ; readfile ( $ file immagine ) ; header (" Content-type : text /html" ) ; echo " < /body> < /html > " ; ? >
Ignora utente cancellazione
Se si sta eseguendo un'operazione , ad esempio l'aggiornamento un database , e non si desidera che l'utente sia in grado di interrompere o annullare l'operazione facendo clic sul pulsante di arresto del browser , è possibile indicare di PHP di ignorare i tentativi di cancellazione fino al completamento dell'operazione. Ad esempio : < ? ? Phpignore_user_abort ( true); update_database (); ignore_user_abort ( false) ; >
matrice di ricerca
devi cercare un array, considerare la progettazione l'array in modo tale che i valori della matrice diventano le chiavi dell'array ei valori corrispondenti sono ogni set a uno. Invece di cercare ogni elemento della matrice per una partita , per esempio, utilizzando la funzione " in_array " , è possibile verificare se un elemento di matrice esistente con la funzione " isset " e di migliorare in modo significativo le prestazioni delle ricerche di matrice. Maggiore è la matrice , maggiore è il guadagno di prestazioni . Per esempio :
Invece di questo : Php $ bevande = array ( " caffè " , " tazza" , " succo " , "soda " , "latte" ), se ( in_array ( "tè " , $ bevande) ) { echo " Tea party " ; } >
Questo metodo di codifica è circa tre volte più veloce : ? ? < php $ bevande = array ( " caffè " = > 1 , "tè" = > 1 , " succo " = > 1 , "soda" = > 1 , "latte" = > 1) ; se isset ( $ bevande [ "tè " ] ) { echo " Tea party " ; } ? >