En 2009 , Enterprise PHP Revista estima aproximadamente un millón de hojas de vida fueron en línea pertenecientes a los programadores de PHP . Especialmente en el entorno colaborativo y social en línea de hoy , PHP programadores comparten conocimientos , consejos y trucos con los demás para ayudar a los programadores nuevos y experimentados por igual. Trucos PHP son generalmente formas de abordar un problema o trucos de codificación que hacen un guión mejor , mejorando el rendimiento guión, teniendo menos tiempo para codificar, reducir el tamaño del código o aumentar la legibilidad del código . Es útil incluso para experimentados programadores de PHP para revisar trucos de vez en cuando y para ponerlas en práctica en su propio código para que no se olvidan. O entre Estados
Si usted está comprobando un código de retorno de una función booleana y actuar en consecuencia , a menudo se puede escribir una declaración más compacto utilizando "o" que también es más fácil de leer que una forma tradicional de codificación de la comparación . Por ejemplo, considere el siguiente código que intenta conectarse a un servidor de base de datos MySQL y sale del programa si la conexión no se realiza correctamente :
$ dbc = mysql_connect_db ( "localhost " , $ usuario , $ password ) y si {die () ;}
puede escribir la misma declaración en una sola línea conectando los estados con ($ dbc ! ) "o : "
$ dbc = mysql_connect_db ( "localhost " , $ usuario , $ password ) or die ();
suprimiendo MySQL errores
En el ejemplo anterior, si la conexión de base de datos no tiene éxito , antes del fallecimiento de la aplicación , la extensión PHP MySQL emitirá un mensaje muy técnico error en la pantalla, por ejemplo :
Advertencia: Access denied for user : johndoe@209-60-17-119.nrp1.mx . ny.frontiernet.net ( using password: Sí ) in /var /www /application /html /database.php on line 6 personas
Este mensaje de error se enviará al usuario mensajes de error incluso si PHP está activado off . Para ocultar el mensaje de error de los usuarios, prefijo de una llamada de función MySQL con el signo " @" y mensajes de error de MySQL se suprimirá de esa llamada. Para incluir su propio mensaje de error, pasar una cadena a la función de "morir" . Por ejemplo :
$ dbc = @ mysql_connect_db ( "localhost " , $ usuario , $ password ) or die ( "¡ No se pudo conectar con el servidor de base de datos ");
< br > Imagenes de archivo Volviendo
puede haber casos en los que desea devolver una imagen en lugar de HTML, como por ejemplo en un servicio web. Usted puede hacer esto mediante la inclusión de una cabecera " Content-type " para especificar que la salida es una imagen y utilizar la función " readfile " para devolver el contenido del archivo de imagen . Vuelva a HTML mediante la emisión de una cabecera " Content-type " de HTML. Por ejemplo :
< php ... cabecera ? ( " Content-type : image /gif" ) ; readfile ($ ImageFile ) ; header (" Content-type : text /html" ) ; echo " < /body> < /html >"; ? >
Ignorar cancelación usuario
Si está realizando una operación, por ejemplo, la actualización de una base de datos , y que no desea que el usuario sea capaz de interrumpir o cancelar la operación haciendo clic en el botón de parada en el navegador , puede indicar a PHP que ignore los intentos de anulación hasta que la operación se ha completado. Por ejemplo : < ? Phpignore_user_abort ( true); update_database (); ignore_user_abort ( false); >
matriz de búsqueda
Si usted tiene que buscar un arreglo, considerar el diseño de la matriz de tal manera que los valores de la matriz se convierten en las claves de matriz y sus valores correspondientes se ajustan respectivamente a uno. En lugar de buscar cada elemento de la matriz por un partido, por ejemplo, utilizando la función " in_array " , se puede comprobar si existe un elemento de matriz usando la función " isset " y mejorar significativamente el rendimiento de las búsquedas de matriz. El más grande de la matriz , mayor será la ganancia de rendimiento . Por ejemplo :
En lugar de esto: < php $ bebidas = array (" azul", "verde" , " zumo " , "soda " , "leche "); if ( in_array ( "té" , $ bebidas) ) { echo " fiesta de té ";} >
Este método de codificación es cerca de tres veces más rápido : ? < php $ bebidas = array ( "El café " = > 1 , "té" = > 1 , "jugo" = > 1 , "soda " = > 1 , "leche " = > 1 ), si isset ($ bebidas [" verde"] ) { echo " fiesta del té ";} ? >