Prepárate para una Prueba Técnica PHP

Tiempo de lectura: 2.79 minutos

Póster del artículo Prepárate para una Prueba Técnica PHP

Como parte de un proceso de selección, generalmente nos encontramos con:

  • Una primera entrevista general
  • Una prueba técnica
  • Una entrevista técnica

Esto es así porque el primer filtro te ahorrará mucho tiempo, tanto a ti como a la empresa que está contratando.

En una primera entrevista se valida que tus intereses estén alineados con los de la empresa.

Allí generalmente se discuten temas como el salario, el horario de trabajo (y qué tan flexibles son), la cultura de trabajo, etcétera.

Una vez que ambos están interesados en continuar, lo más probable es que te envíen una prueba técnica, para que resuelvas según tu disponibilidad.

  • Usualmente la prueba técnica consta de 1 o 2 ejercicios sobre algoritmos.
  • En otras ocasiones pueden encargarte resolver un proyecto pequeño.

En este artículo nos enfocamos en el primer caso.

Es decir, se te presentan ejercicios que debes resolver en un tiempo límite (generalmente entre 20 minutos y 1 hora).

Si te encuentras en el segundo escenario, te recomiendo hacer uso de patrones de diseño en tu solución.

Cómo prepararte

Para esto es muy importante:

  • Reforzar tu lógica de programación resolviendo algoritmos
  • Aprender o repasar sobre estructuras de datos
  • Practicar usando el lenguaje para el cuál estás postulando

En este caso, vamos a revisar los métodos más comunes en PHP.

De tal manera que, los recuerdes con facilidad al momento de resolver los ejercicios de algoritmos.

Cómo ejecutar los ejemplos

Prueba estos métodos de manera local.

El método tradicional es crear un archivo .php y abrirlo en el navegador.

Sin embargo, recuerda que también puedes ejecutar tales archivos desde la terminal:

php ejemplo.php

De esta manera:

Ejecutar script PHP sobre la terminal

Métodos más comunes en PHP

Para trabajar con Arrays (arreglos)

Crear un array y añadir elementos

$frutas = ['manzana', 'naranja'];
array_push($frutas, 'plátano'); // Añade al final
array_unshift($frutas, 'fresa'); // Añade al inicio

Filtrar elementos

$nros = [1, 2, 3, 4, 5];
$pares = array_filter($nros, fn($n) => $n % 2 === 0); // [2, 4]

Ordenar

sort($frutas); // Ordena en orden alfabético

Mapear

$dobles = array_map(fn($n) => $n * 2, $nros); // [2, 4, 6, 8, 10]

Verificar si un valor existe en un array

$frutas = ['manzana', 'naranja', 'plátano'];
$existeNaranja = in_array('naranja', $frutas); // true

Verificar si una clave existe en un array asociativo

$persona = ['nombre' => 'Juan', 'edad' => 27];
$existeClave = array_key_exists('edad', $persona); // true

Obtener una porción de un array

$colores = ['rojo', 'verde', 'azul', 'amarillo'];
$subArray = array_slice($colores, 1, 2); // ['verde', 'azul']

Dividir un array en porciones

$numeros = [1, 2, 3, 4, 5];
$porciones = array_chunk($numeros, 2); // [[1, 2], [3, 4], [5]]

Nota: como se observa, el último chunk puede tener menos elementos.

Unir dos arrays

$array1 = ['a', 'b', 'c'];
$array2 = [1, 2, 3];
$combinado = array_merge($array1, $array2); // ['a', 'b', 'c', 1, 2, 3]

Restar a un array, otro array

$array1 = [1, 2, 3, 4];
$array2 = [3, 4, 5, 6];
$diferencia = array_diff($array1, $array2); // [1, 2]
$otraDiferencia = array_diff($array2, $array1); // [5, 6]

Como muestra el ejemplo, el orden importa, al usar diff.

Obtener la intersección entre dos arrays

$array1 = [1, 2, 3, 4];
$array2 = [3, 4, 5, 6];
$interseccion = array_intersect($array1, $array2); // [3, 4]

Para trabajar con Strings (cadenas)

Convertir a mayúsculas y obtener longitud

$mensaje = "hola mundo";
$mensajeMayusculas = strtoupper($mensaje); // "HOLA MUNDO"
$longitud = strlen($mensaje); // 10

Convertir a minúsculas

$texto = "Hola Mundo";
$textoMinusculas = strtolower($texto); // "hola mundo"

Convertir la primera letra a mayúscula

$palabra = "un ejemplo";
$palabraCapitalizada = ucfirst($palabra); // "Un ejemplo"

Convertir la primera letra de cada palabra a mayúsculas

$frase = "esto es una prueba";
$fraseCapitalizada = ucwords($frase); // "Esto Es Una Prueba"

Reemplazar y buscar texto

$mensaje = "hola mundo";
$saludo = str_replace("mundo", "PHP", $mensaje); // "hola PHP"
$posicion = strpos($mensaje, "mundo"); // 5

Es importante resaltar que str_replace devuelve una nueva cadena con el cambio, sin afectar a la original.

Por eso es que podemos buscar "mundo" en la variable $mensaje. Y lo encontramos en la posición 5.

Extraer una subcadena

$cadena = "Hola Mundo";
$posicion = 5;
$cantCaracters = 3;
$subCadena = substr($cadena, $posicion, $cantCaracters); // "Mun"

Dividir y unir strings

$cadena = "manzana,naranja,plátano";
$frutasArray = explode(",", $cadena); // ['manzana', 'naranja', 'plátano']
$frutasString = implode(" - ", $frutasArray); // "manzana - naranja - plátano"

El primer argumento es el caracter delimitador, al momento de separar con explode, o el que se usa al juntar con implode.

Eliminar espacios en blanco al inicio y al final

$cadenaConEspacios = "  Hola  ";
$cadenaSinEspacios = trim($cadenaConEspacios); // "Hola"

Formatear una cadena con variables

$nombre = "Juan";
$edad = 27;
$saludo = sprintf("Hola, mi nombre es %s y tengo %d años.", $nombre, $edad); 
// "Hola, mi nombre es Juan y tengo 27 años."

Formatear un número con separadores

$numero = 12345.6789;
$formatoNumero = number_format($numero, 2, '.', ','); // "12,345.68"

Tengamos en cuenta que indicar los caracteres separadores es opcional.

Es decir, incluso si los omitimos el resultado será el mismo (ya que esos son valores por defecto).

$numero = 12345.6789;
$formatoNumero = number_format($numero, 2); // "12,345.68"

# php

Logo de Programación y más

Comparte este post si te fue de ayuda 🙂.

Regístrate

Accede a todos los cursos, y resuelve todas tus dudas.

Cursos Recomendados 🚀

Imagen para el curso Aprende Laravel

Aprende Laravel

Aprende Laravel desde cero y desarrolla aplicaciones web reales, en tiempo récord, de la mano de Laravel.

Iniciar curso
Imagen para el curso Laravel Upgrade

Laravel Upgrade

Actualiza tus proyectos desde cualquier versión hasta la última versión estable de Laravel.

Iniciar curso
Imagen para el curso Laravel y Vue

Laravel y Vue

Desarrollemos un Messenger! Aprende sobre Channels, Queues, Vuex, JWT, Sesiones, BootstrapVue y mucho más.

Iniciar curso

Espera un momento 🎁 ...

¿Te gustaría aprender a programar, gratis?

Mago de Programación y más

Sólo debes registrarte 😉.