Función PHP in_array

Función PHP in_array
Las variables de matriz se utilizan para almacenar valores múltiples donde se accede a cada valor utilizando el valor de índice. A veces necesitamos buscar en un elemento particular en una matriz para fines de programación. El in_array () es una función incorporada de PHP para buscar elementos específicos en una matriz. Busca datos de manera sensible a los casos. La forma de usar esta función para buscar valor en una matriz se ha descrito en este tutorial.

Sintaxis

bool in_array (búsqueda de $ mixta, matriz $ array [, bool $ type = false])

Los dos primeros argumentos de esta función son obligatorios y el tercer argumento es opcional. El primer argumento contiene el valor que se buscará. El segundo argumento contiene la matriz en la que se realizará la búsqueda. El tercer argumento es opcional que se usa para definir el tipo de búsqueda. El valor predeterminado del tercer argumento es falso que se usa para buscar el elemento en función del valor de búsqueda solamente. Si el valor del tercer argumento se establece en verdadero, la búsqueda se realizará en función del valor de búsqueda y el tipo.

Usos de la función in_array ()

Diferentes usos de la función in_array () se han mostrado en esta parte del tutorial utilizando múltiples ejemplos.

Ejemplo-1: valor de búsqueda en una matriz

Cree un archivo PHP con el siguiente script para buscar un número en una matriz de valores numéricos. El valor de búsqueda se tomará del parámetro de consulta de URL llamado 'norte'. La función in_array () volverá verdadero Si el valor de búsqueda existe en la matriz, de lo contrario regresará FALSO.

// declarar una matriz de números
$ n_array = array (89, 34, 56, 23, 90, 45, 12, 67);
// verificar el número de búsqueda se da en la URL o no
if (isset ($ _ get ['n']))

// leer el número pasado en la URL
$ num = $ _get ['n'];
// verifique el número existe en la matriz o no
if (in_array ($ num, $ n_array))
eco "

$ num existe en la matriz.

";
demás
eco "

$ num no existe en la matriz.

";


demás
// Imprimir mensaje si no ha pasado el parámetro de consulta de URL con valor
eco "

Ningún número ha dado.

";
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior si no se da ningún valor de búsqueda en la dirección de URL.

La siguiente salida aparecerá después de ejecutar el script anterior para el valor de búsqueda, 90 que existe en la matriz.

La siguiente salida aparecerá después de ejecutar el script anterior para el valor de búsqueda, 900 que no existe en la matriz.

Ejemplo-2: Valor de búsqueda con Tipo en una matriz

Cree un archivo PHP con el siguiente script para buscar un valor con el tipo en una matriz de datos mixtos. La matriz contiene el número, la cadena y los valores booleanos. El SearchVal () la función se ha utilizado en el script para buscar el valor particular con el tipo en la matriz. La función se ha llamado tres veces para buscar tres valores en la matriz.

// Declarar función para buscar elemento en la matriz
Función SearchVal ($ src, $ arr)

if (in_array ($ src, $ arr, true))
hacer eco "el $ srcexistir en la matriz.
";
demás
hacer eco "el $ srcno existe en la matriz.
";

// declarar una matriz de valores de mezcla
$ mixarray = array ("mango", 100, "pastel", verdadero, "78");
// imprime los valores de la matriz
print_r ($ mixarray);
eco "
";
/*
Busque diferentes tipos de valores llamando
SearchVal () varias veces
*/
$ Search = "Cake";
SearchVal ($ Search, $ MixArray);
$ Search = "100";
SearchVal ($ Search, $ MixArray);
$ Search = True;
SearchVal ($ Search, $ MixArray);
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior. Según la salida, 'Pastel' y 'pastel' Los valores no son iguales para la búsqueda sensible a los casos, "100" y 100 no son iguales para el tipo, Verdadero y Verdadero son iguales.

Ejemplo-3: Buscar una matriz unidimensional en la matriz bidimensional

Cree un archivo PHP con el siguiente script que buscará una matriz unidimensional en una matriz bidimensional. El SearchVal () La función se ha utilizado en el script para buscar una matriz dentro de otra matriz. Esta función tomará una matriz unidimensional en el primer argumento que se buscará y una matriz bidimensional en el segundo argumento en el que se buscará una matriz unidimensional.

// declarar una matriz bidimensional
$ Employes = Array (Array ('John', 'CEO', '[email protected] '),
Array ('Farhan', 'Md', '[email protected] '),
Array ('maruf', 'gerente', '[email protected] '));
/*
Buscar dos matrices en la matriz bidimensional
llamando a la función SearchVal () dos veces
*/
$ src_array = array ('farhan', 'md', '[email protected] ');
SearchVal ($ src_array, $ empleados);
$ src_array = array ('John', 'CEO', '[email protected] ');
SearchVal ($ src_array, $ empleados);
// Declarar la función de búsqueda en la matriz en la matriz
Función SearchVal ($ src_arr, $ main_arr)

if (in_array ($ src_arr, $ main_arr))
Echo "La información del empleado existe.
";
demás
Echo "La información del empleado no existe.
";

?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior. Aquí el in_array () la función ha regresado verdadero para la primera matriz de búsqueda y FALSO para la segunda matriz de búsqueda.

Ejemplo-4: Buscar objeto en una matriz de objetos

Cree un archivo PHP con el siguiente script que buscará un objeto en una matriz de objetos. Se ha declarado en el script una clase en el script que tiene un constructor para inicializar dos variables de clase. Se ha declarado una matriz de objetos en el que se han definido tres objetos de la clase como valores de matriz. A continuación, se ha buscado el objeto en particular en la matriz.

// Declarar la clase
Libro de clase

público $ libro;
público $ autor;
función __construct ($ bookname, $ fhaTorname)

$ this-> book = $ bookName;
$ this-> author = $ AHORNOname;


// declarar una matriz de objetos
$ books = array (nuevo libro ('The Joy of PHP', 'Alan Forbes'),
Nuevo libro ('PHP moderno: nuevas características y buenas prácticas', 'Josh Lockhart'),
nuevo libro ('PHP Solutions: Dynamic Web Design Made Easy', 'David Powers'));
// busca un objeto en la matriz
if (in_array (nuevo libro ('The Joy of PHP', 'Alan Forbes'), $ libros)))
eco "
La información del libro existe.
";
demás
eco "
La información del libro no existe.
";

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior. Aquí, la función in_array () ha regresado verdadero Porque el objeto de búsqueda existe en la matriz.

Conclusión

Los diversos usos de la función in_array () se han explicado en este tutorial mediante el uso de ejemplos muy simples para ayudar a los usuarios de PHP a conocer el propósito de usar esta función y aplicarla correctamente en el script.