Las 100 preguntas y respuestas principales de la entrevista PHP (PDF)

Aquí hay preguntas y respuestas de la entrevista PHP para que los candidatos más nuevos y experimentados consigan el trabajo de sus sueños.

 

Preguntas de la entrevista PHP para principiantes


1) ¿Qué es PHP?

PHP es un lenguaje web basado en scripts que permiten a los desarrolladores crear dinámicamente páginas web generadas.


2) ¿Qué significan las iniciales de PHP?

PHP significa preprocesador de hipertexto.

👉 Descarga gratuita de PDF: Preguntas y respuestas de la entrevista PHP


3) ¿A qué lenguaje de programación se parece PHP?

La sintaxis de PHP se parece a Perl y C


4) ¿Qué significa PEAR?

PEAR significa "Repositorio de aplicaciones y extensiones PHP". Extiende PHP y proporciona un mayor nivel de programación para desarrolladores web.


5) ¿Cuál es la versión PHP realmente utilizada?

La versión 7.1 o 7.2 es la versión recomendada de PHP.


6) ¿Cómo se ejecuta un script PHP desde la línea de comandos?

Simplemente use la interfaz de línea de comandos (CLI) de PHP y especifique el nombre del archivo del script que se ejecutará de la siguiente manera:
php script.php


7) ¿Cómo ejecutar el shell PHP interactivo desde la interfaz de línea de comandos?

Simplemente use el programa PHP CLI con la opción -a de la siguiente manera:
php -a


8) ¿Cuál es la forma correcta y las dos más comunes de iniciar y finalizar un bloque de código PHP?

Las dos formas más comunes de iniciar y finalizar un script PHP son:

 <?php [   ---  PHP code---- ] ?> and <? [---  PHP code  ---] ?>

9) ¿Cómo podemos mostrar el resultado directamente en el navegador?

Para poder mostrar el resultado directamente en el navegador, debemos usar las etiquetas especiales .


10) ¿Cuál es la principal diferencia entre PHP 4 y PHP 5?

PHP 5 presenta muchas programación orientada a objetos adicionales (Programación orientada a objetos) caracteristicas.


11) ¿Se admite la herencia múltiple en PHP?

PHP sólo admite herencia única; significa que una clase se puede ampliar desde una sola clase utilizando la palabra clave "extendido".


12) ¿Cuál es el significado de una clase final y un método final?

'final' se introduce en PHP5. Clase final significa que esta clase no se puede ampliar y no se puede anular un método final.


13) ¿Cómo se realiza la comparación de objetos en PHP?

Usamos el operador '==' para probar si dos objetos son instancias de la misma clase y tienen los mismos atributos y valores iguales. Podemos probar si dos objetos se refieren a la misma instancia de la misma clase mediante el uso del operador de identidad '==='.


14) ¿Cómo pueden interactuar PHP y HTML?

Es posible generar HTML a través de scripts PHP y es posible pasar información de HTML a PHP.


15) ¿Qué tipo de operación se necesita al pasar valores a través de un formulario o una URL?

Si queremos pasar valores a través de un formulario o una URL, entonces necesitamos codificarlos y decodificarlos usando htmlspecialchars() y urlencode().


16) ¿Cómo pueden PHP y Javascript ¿interactuar?

PHP y Javascript no puede interactuar directamente ya que PHP es un lenguaje del lado del servidor y Javascript es un lenguaje del lado del cliente. Sin embargo, podemos intercambiar variables ya que PHP puede generar Javascript El código debe ser ejecutado por el navegador y es posible pasar variables específicas a PHP a través de la URL.


17) ¿Qué se necesita para poder utilizar la función de imagen?

Se necesita la biblioteca GD para ejecutar funciones de imagen.


18) ¿Para qué sirve la función 'tipos de imagen()'?

imagetypes() proporciona el formato de imagen y los tipos admitidos por la versión actual de GD-PHP.


19) ¿Cuáles son las funciones que se utilizarán para obtener las propiedades de la imagen (tamaño, ancho y alto)?

las funciones son getimagesize() para el tamaño, imagesx() para ancho y imagesy() para la altura


20) ¿Cómo se manejan las fallas en la ejecución con las funciones include() y require()?

Si la funcion require() no puede acceder al archivo, entonces termina con un error fatal. sin embargo, el include() La función da una advertencia y el script PHP continúa ejecutándose.


21) ¿Cuál es la principal diferencia entre require() y require_once()?

require() y require_once() realice la misma tarea excepto que la segunda función verifica si el script PHP ya está incluido o no antes de ejecutarlo.

(lo mismo para include_once() e include())


22) ¿Cómo puedo mostrar texto con un script PHP?

Son posibles dos métodos:

<!--?php echo "Method 1"; print "Method 2"; ?-->

23) ¿Cómo podemos mostrar información de una variable y legible por un humano con PHP?

Para poder mostrar un resultado legible por humanos utilizamos print_r().


24) ¿Cómo es posible establecer un tiempo de ejecución infinito para un script PHP?

El set_time_limit(0) agregado al comienzo de un script establece un tiempo de ejecución infinito para no tener el error de PHP "tiempo máximo de ejecución excedido". También es posible especificar esto en el archivo php.ini.


Preguntas y respuestas de la entrevista PHP para experimentados

25) ¿Qué significa el error de PHP "Error de análisis en PHP - T_variable inesperada en la línea x"?

Este es un error de sintaxis de PHP que expresa que un error en la línea x detiene el análisis y la ejecución del programa.


26) ¿Qué debemos hacer para poder exportar datos a un archivo de Excel?

La forma más común y utilizada es obtener datos en un formato compatible con Excel. Por ejemplo, es posible escribir un archivo .csv, elegir por ejemplo una coma como separador entre campos y luego abrir el archivo con Excel.


27) ¿Para qué sirve la función file_get_contents()?

file_get_contents() Leamos un archivo y lo almacenamos en una variable de cadena.


28) ¿Cómo podemos conectarnos a un MySQL base de datos desde un script PHP?

Para poder conectarse a un MySQL base de datos, debemos utilizar la función mysqli_connect() de la siguiente manera:

<!--?php $database = mysqli_connect("HOST", "USER_NAME", "PASSWORD"); mysqli_select_db($database,"DATABASE_NAME"); ?-->

29) ¿Para qué sirve la función mysql_pconnect()?

mysql_pconnect() asegurar una conexión persistente a la base de datos, significa que la conexión no se cierra cuando finaliza el script PHP.

Esta función no es compatible con PHP 7.0 y superiores


30) ¿Cómo se maneja el conjunto de resultados de Mysql en PHP?

El conjunto de resultados se puede manejar utilizando mysqli_fetch_array, mysqli_fetch_assoc, mysqli_fetch_object o mysqli_fetch_row.


31) ¿Cómo es posible saber el número de filas devueltas en el conjunto de resultados?

La función mysqli_num_rows() devuelve el número de filas en un conjunto de resultados.


32) ¿Qué función nos da el número de entradas afectadas por una consulta?

mysqli_affected_rows() Devuelve el número de entradas afectadas por una consulta SQL.


33) ¿Cuál es la diferencia entre mysqli_fetch_object() y mysqli_fetch_array()?

mysqli_fetch_object() La función recopila el primer registro único coincidente donde mysqli_fetch_array() recopila todos los registros coincidentes de la tabla en una matriz.


34) ¿Cómo podemos acceder a los datos enviados a través de la URL con el método GET?

Para acceder a los datos enviados mediante el método GET, utilizamos una matriz $_GET como esta:

www.url.com?var=value
$variable = $_GET["var"]; this will now contain 'value'

35) ¿Cómo podemos acceder a los datos enviados a través de la URL con el método POST?

Para acceder a los datos enviados de esta manera, utiliza la matriz $_POST.

Imagine que tiene un campo de formulario llamado "var" en el formulario cuando el usuario hace clic en enviar al formulario de publicación, luego puede acceder al valor de esta manera:

$_POST["var"];

36) ¿Cómo podemos comprobar que el valor de una variable determinada es un número?

Es posible utilizar la función dedicada is_numeric() para comprobar si es un número o no.


37) ¿Cómo podemos comprobar que el valor de una variable determinada es alfanumérico?

Es posible utilizar la función dedicada ctype_alnum para comprobar si es un valor alfanumérico o no.


38) ¿Cómo verifico si una variable determinada está vacía?

Si queremos comprobar si una variable tiene un valor o no, es posible utilizar la función vacía().


39) ¿Qué significa la función desvincular()?

La función unlink() está dedicada al manejo del sistema de archivos. Simplemente elimina el archivo proporcionado como entrada.


40) ¿Qué significa la función unset()?

La función unset() está dedicada a la gestión de variables. Hará que una variable sea indefinida.


41) ¿Cómo puedo escapar de los datos antes de almacenarlos en la base de datos?

La función addlashes nos permite escapar de los datos antes de almacenarlos en la base de datos.


42) ¿Cómo es posible eliminar caracteres de escape de una cadena?

La función stripslashes nos permite eliminar los caracteres de escape antes de los apóstrofes en un cadena.


43) ¿Cómo podemos escapar automáticamente de los datos entrantes?

Tenemos que habilitar la entrada Cotizaciones mágicas en el archivo de configuración de PHP.


44) ¿Qué significa la función get_magic_quotes_gpc()?

La función get_magic_quotes_gpc() nos dice si las comillas mágicas están activadas o no.


45) ¿Es posible eliminar las etiquetas HTML de los datos?

La función strip_tags() nos permite limpiar una cadena de las etiquetas HTML.


46) ¿Para qué sirve la variable estática en función?

Una variable estática se define dentro de una función solo la primera vez y su valor se puede modificar durante las llamadas a la función de la siguiente manera:

<!--?php function testFunction() { static $testVariable = 1; echo $testVariable; $testVariable++; } testFunction();        //1 testFunction();        //2 testFunction();        //3 ?-->

47) ¿Cómo podemos definir una variable accesible en funciones de un script PHP?

Esta característica es posible usando la palabra clave global.


48) ¿Cómo es posible devolver un valor de una función?

Una función devuelve un valor usando la instrucción 'return $value;'.


49) ¿Cuál es el método de hash más conveniente para utilizar el hash de contraseñas?

Es preferible usar crypt() que soporta de forma nativa varios algoritmos hash o la función hash() que soporta más variantes que crypt() en lugar de usar algoritmos hash comunes como md5, sha1 o sha256 porque están concebidos para ser rápidos. Por lo tanto, el hash de contraseñas con estos algoritmos puede crear vulnerabilidad.


50) ¿Qué extensión criptográfica proporciona generación y verificación de firmas digitales?

El PHP-OpenSSL La extensión proporciona varias operaciones criptográficas, incluida la generación y verificación de firmas digitales.


Preguntas de la entrevista PHP para 5 años de experiencia

51) ¿Cómo se define una constante en un script PHP?

La directiva define() nos permite definir una constante de la siguiente manera:

define ("ACONSTANT", 123);

52) ¿Cómo se puede pasar una variable por referencia?

Para poder pasar una variable por referencia, usamos un signo comercial delante de ella, de la siguiente manera $var1 = &$var2


53) ¿Funcionará en PHP una comparación de un número entero 12 y una cadena “13”?

“13” y 12 se pueden comparar en PHP ya que convierte todo al tipo entero.


54) ¿Cómo es posible convertir tipos en PHP?

El nombre del tipo de salida debe especificarse entre paréntesis antes de la variable que se va a convertir de la siguiente manera:

* (int), (entero) – convertir a entero

* (bool), (booleano) – convertir a booleano

* (flotante), (doble), (real) – convertir a flotante

* (cadena) – convertir a cadena

* (matriz) – convertir a matriz

* (objeto) – convertir a objeto


55) ¿Cuándo termina una declaración condicional con endif?

Cuando el if original iba seguido de: y luego el bloque de código sin llaves.


56) ¿Cómo se usa el operador condicional ternario en PHP?

Se compone de tres expresiones: una condición y dos operandos que describen qué instrucción se debe ejecutar cuando la condición especificada es verdadera o falsa, de la siguiente manera:

Expression_1?Expression_2 : Expression_3;

57) ¿Para qué se utiliza la función func_num_args()?

La función func_num_args() se utiliza para proporcionar la cantidad de parámetros pasados ​​a una función.


58) Si la variable $var1 se establece en 10 y $var2 se establece en el carácter var1, ¿cuál es el valor de $$var2?

$$var2 contiene el valor 10.


59) ¿Qué significa acceder a una clase a través de ::?

:: se utiliza para acceder a métodos estáticos que no requieren inicialización de objetos.


60) En PHP, ¿los objetos se pasan por valor o por referencia?

En PHP, los objetos se pasan por referencia.


61) ¿Se llama implícitamente a los constructores principales dentro de un constructor de clase?

No, se debe llamar explícitamente a un constructor principal de la siguiente manera:

parent::constructor($value)

62) ¿Cuál es la diferencia entre __dormir y __despertar?

__sleep devuelve la matriz de todas las variables que deben guardarse, mientras que __wakeup las recupera.


63) ¿Qué es más rápido?

1- Combinando dos variables de la siguiente manera:

$variable1 = 'Hello ';

$variable2 = 'World';

$variable3 = $variable1.$variable2;

Or

2- $variable3 = "$variable1$variable2";

$variable3 contendrá "Hola mundo". El primer código es más rápido que el segundo código, especialmente para grandes conjuntos de datos.


64) ¿Cuál es la definición de sesión?

Una sesión es un objeto lógico que nos permite conservar datos temporales en múltiples páginas PHP.


65) ¿Cómo iniciar una sesión en PHP?

El uso de la función session_start() nos permite activar una sesión.


66) ¿Cómo se puede propagar una identificación de sesión?

Puede propagar una identificación de sesión mediante cookies o parámetros de URL.


67) ¿Cuál es el significado de una cookie persistente?

Una cookie persistente se almacena permanentemente en un archivo de cookies en la computadora del navegador. Por defecto las cookies son temporales y se borran si cerramos el navegador.


68) ¿Cuándo terminan las sesiones?

Las sesiones finalizan automáticamente cuando el script PHP termina de ejecutarse, pero se pueden finalizar manualmente usando session_write_close().


69) ¿Cuál es la diferencia entre session_unregister() y session_unset()?

La función session_unregister() cancela el registro de una variable global de la sesión actual y la función session_unset() libera todas las variables de la sesión.


70) ¿Qué significa $GLOBALS?

$GLOBALS es una matriz asociativa que incluye referencias a todas las variables que están definidas actualmente en el alcance global del script.


Preguntas de la entrevista PHP para 10 años de experiencia

71) ¿Qué significa $_SERVER?

$_SERVER es una matriz que incluye información creada por el servidor web, como rutas, encabezados y ubicaciones de scripts.


72) ¿Qué significa $_FILES?

$_FILES es una matriz asociativa compuesta de elementos enviados al script actual mediante el método HTTP POST.


73) ¿Cuál es la diferencia entre $_FILES['userfile']['name'] y $_FILES['userfile']['tmp_name']?

$_FILES['userfile']['name'] representa el nombre original del archivo en la máquina cliente,

$_FILES['userfile']['tmp_name'] representa el nombre de archivo temporal del archivo almacenado en el servidor.


74) ¿Cómo podemos obtener el error cuando hay un problema para cargar un archivo?

$_FILES['userfile']['error'] contiene el código de error asociado con el archivo cargado.


75) ¿Cómo podemos cambiar el tamaño máximo de los archivos a subir?

Podemos cambiar el tamaño máximo de los archivos que se cargarán cambiando upload_max_filesize en php.ini.


76) ¿Qué significa $_ENV?

$_ENV es una matriz asociativa de variables enviadas al script PHP actual a través del método de entorno.


77) ¿Qué significa $_COOKIE?

$_COOKIE es una matriz asociativa de variables enviadas al script PHP actual mediante cookies HTTP.


78) ¿Qué significa el alcance de las variables?

El alcance de una variable es el contexto dentro del cual se define. En su mayor parte, todas las variables de PHP solo tienen un alcance único. Este alcance único abarca también los archivos incluidos y requeridos.


79) ¿Cuál es la diferencia entre el operador 'BITWISE AND' y el operador 'LOGICAL AND'?

$a y $b: VERDADERO si tanto $a como $b son VERDADEROS.

$a y $b: Se configuran los bits que están configurados tanto en $a como en $b.


80) ¿Cuáles son los dos principales operadores de cadenas?

El primero es el operador de concatenación ('.'), que devuelve la concatenación de sus argumentos derecho e izquierdo. El segundo es ('.='), que agrega el argumento de la derecha al argumento de la izquierda.


81) ¿Qué significa el operador de matriz '==='?

$a === $b VERDADERO si $a y $b tienen los mismos pares clave/valor en el mismo orden y del mismo tipo.


82) ¿Cuáles son las diferencias entre $a!= $b y $a!== $b?

!= significa desigualdad (VERDADERO si $a no es igual a $b) y !== significa no identidad (VERDADERO si $a no es idéntico a $b).


83) ¿Cómo podemos determinar si una variable PHP es un objeto instanciado de una determinada clase?

Para poder verificar si una variable PHP es un objeto instanciado de una determinada clase usamos instancia de.


84) ¿Para qué sirve la declaración goto?

La declaración goto se puede colocar para permitir saltar dentro del programa PHP. El objetivo está señalado por una etiqueta seguida de dos puntos, y la instrucción se especifica como una instrucción goto seguida de la etiqueta de destino deseada.


85) ¿Cuál es la diferencia entre Exception::getMessage y Exception:: getLine?

Exception::getMessage nos permite obtener el mensaje de excepción y Exception::getLine nos permite obtener la línea en la que ocurrió la excepción.


86) ¿Qué significa la expresión Exception::__toString?

Exception::__toString proporciona la representación en cadena de la excepción.


87) ¿Cómo es posible analizar un archivo de configuración?

La función parse_ini_file() nos permite cargar el archivo ini especificado en el nombre del archivo y devuelve la configuración que contiene en una matriz asociativa.


88) ¿Cómo podemos determinar si una variable está configurada?

La función booleana isset determina si una variable está configurada y no es NULL.


89) ¿Cuál es la diferencia entre las funciones strstr() y strstr()?

La función de cadena strstr(string allString, string occ) devuelve parte de allString desde la primera aparición de occ hasta el final de allString. Esta función distingue entre mayúsculas y minúsculas. stristr() es idéntico a strstr() excepto que no distingue entre mayúsculas y minúsculas.


90) ¿Cuál es la diferencia entre for y foreach?

para se expresa de la siguiente manera:

para (expr1; expr2; expr3)

ambiental

La primera expresión se ejecuta una vez al principio. En cada iteración, se evalúa expr2. Si es VERDADERO, el ciclo continúa y se ejecutan las declaraciones dentro de for. Si se evalúa como FALSO, finaliza la ejecución del bucle. expr3 se prueba al final de cada iteración.

Sin embargo, foreach proporciona una manera fácil de iterar sobre matrices y solo se usa con matrices y objetos.


91) ¿Es posible enviar un formulario con un botón dedicado?

Es posible utilizar el document.form.submit() función para enviar el formulario. Por ejemplo: <input type=button value="SUBMIT" onClick="document.form.submit()">


92) ¿Cuál es la diferencia entre ereg_replace() y eregi_replace()?

La función eregi_replace() es idéntica a la función ereg_replace() excepto que ignora la distinción entre mayúsculas y minúsculas al hacer coincidir caracteres alfabéticos.


93) ¿Es posible proteger caracteres especiales en una cadena de consulta?

Sí, utilizamos la función urlencode() para poder proteger caracteres especiales.


94) ¿Cuáles son las tres clases de errores que pueden ocurrir en PHP?

Las tres clases básicas de errores son avisos (no críticos), advertencias (errores graves) y errores fatales (errores críticos).


95) ¿Cuál es la diferencia entre los caracteres \034 y \x34?

\034 es octal 34 y \x34 es hexadecimal 34.


96) ¿Cómo podemos pasar la variable a través de la navegación entre las páginas?

Es posible pasar variables entre páginas PHP mediante sesiones, cookies o campos de formulario ocultos.


97) ¿Es posible extender el tiempo de ejecución de un script PHP?

El uso de set_time_limit(int segundos) nos permite extender el tiempo de ejecución de un script PHP. El límite predeterminado es 30 segundos.


98) ¿Es posible destruir una cookie?

Sí, es posible configurando la cookie con una fecha de vencimiento pasada.


99) ¿Cuál es el tiempo de sesión predeterminado en PHP?

El tiempo de sesión predeterminado en php es hasta el cierre del navegador.


100) ¿Es posible utilizar el componente COM en PHP?

Sí, es posible integrar componentes del modelo de objetos componentes (distribuidos) ((D)COM) en scripts PHP que se proporcionan como marco.


101) Explique si es posible compartir una única instancia de Memcache entre varios proyectos PHP.

Sí, es posible compartir una única instancia de Memcache entre varios proyectos. Memcache es un espacio de almacenamiento de memoria y puede ejecutar Memcache en uno o más servidores. También puede configurar su cliente para hablar con un conjunto particular de instancias. Por lo tanto, puedes ejecutar dos procesos de Memcache diferentes en el mismo host y, aun así, son completamente independientes. A menos que haya particionado sus datos, entonces será necesario saber de qué instancia obtener los datos o colocarlos.


102) Explique cómo puede actualizar Memcached cuando realiza cambios en PHP.

Cuando PHP cambia, puedes actualizar Memcached mediante

  • Borrar la caché de forma proactiva: Borrar el caché cuando se realiza una inserción o actualización
  • Restablecer el caché: Es similar al primer método, pero en lugar de simplemente eliminar las claves y esperar la siguiente solicitud de datos para actualizar el caché, restablezca los valores después de la inserción o actualización.

Estas preguntas de la entrevista también te ayudarán en tu viva(orals)