Función PHP JSON_ENCODE

Función PHP JSON_ENCODE
El JSON es un formato de datos popular que se utiliza para serializar y transmitir datos estructurados entre el servidor web y la aplicación porque el archivo JSON es legible por humanos y ligero. El JSON_ENCODE () es una función incorporada de PHP que convierte la matriz u objeto en datos JSON para diversos fines. Los diversos usos de esta función se han mostrado en este tutorial.

Sintaxis

El primer argumento de esta función es obligatorio y los otros dos argumentos son opcionales. Devuelve datos JSON si los datos se convierten en formato JSON correctamente, de lo contrario devuelve FALSO.

cadena | false json_encode (mixto $ valor [, int $ flags = 0 [, int $ profundidad = 512]]);

El primer argumento contiene el valor que se codificará en formato JSON.

El segundo argumento es establecer el valor de Bitmask en el momento de la conversión.

Json_force_object, json_hex_quot,
JSON_HEX_TAG, JSON_HEX_AMP,
Json_hex_apos, json_invalid_utf8_ignore,
Json_invalid_utf8_substitute, json_numeric_check,
JSON_PARTIA_OUTPUT_ON_ERROR, JSON_PRESERVE_ZERO_FRACTION,
Json_pretty_print, json_unescaped_line_terminators,
JSON_UNESCAPED_SLASHES, JSON_UNESCAPED_UNICODE,
Json_throw_on_error.

El tercer argumento se usa para establecer la profundidad máxima que será mayor que 0.

Usos de la función JSON_ENCODE ()

Las formas de convertir diferentes tipos de datos en formato JSON se han mostrado en esta parte del tutorial mediante el uso de diferentes ejemplos.

Ejemplo-1: Convertir la matriz PHP en datos JSON

Cree un archivo PHP con el siguiente script para conocer la forma de convertir una matriz asociativa en datos JSON. Se ha declarado una matriz asociativa de 4 elementos en el guión. Se imprimirán los valores de la matriz y los valores JSON convertidos.

// Convertir la matriz a datos JSON
$ jSondata = json_encode ($ student);
// Imprima los datos JSON
eco "
Los valores de JSON son:
". $ jsondata;
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior.

Ejemplo-2: Convierta una matriz en datos JSON usando JSON_NUMERIC_CHECK

Cree un archivo PHP con el siguiente script que convertirá la matriz en datos JSON cambiando los valores de cadena numérica de la matriz en los números. El valor de bitmask, json_numeric_check se ha utilizado en el segundo argumento para convertir los valores de cadena numérica en el número. Los valores de la matriz y los valores JSON convertidos se imprimirán más tarde.

// declarar una variedad de diferentes tipos de datos
$ mix_array = array ('897', '4.53 ', 100,' -14 ',' 2.5e3 ', 67,' Linuxhint ', verdadero);
// imprime los valores de la matriz
eco "Los valores de la matriz son:
";
print_r ($ mix_array);
// Convertir la matriz a los datos JSON controlando el valor numérico
$ jSondata = json_encode ($ mix_array, json_numeric_check);
// Imprima los datos JSON
eco "

Los valores de JSON son:
". $ jsondata;
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior. En la salida, cuatro valores de cadena numérica se han convertido en un número y el valor booleano se ha convertido en un número.

Ejemplo-3: Convierta la matriz en datos JSON después de eliminar el valor de la matriz

Cree un archivo PHP con el siguiente script para verificar la forma de convertir los valores de matriz en datos JSON después de eliminar un elemento de la matriz. Aquí, una matriz asociativa de 4 elementos ha declarado. La matriz se ha convertido en datos JSON antes de eliminar cualquier elemento y después de eliminar un elemento. El tercer elemento de la matriz se ha eliminado en el script.

$ Assoc_array = Array (101 => "Pen", 102 => "Pencil", 103 => "Notebook", 104 => "Ruler");
// imprime los valores de la matriz
eco "Los valores de la matriz son:
";
print_r ($ Assoc_Array);
// Convertir la matriz a datos JSON
$ jSondata = JSON_ENCODE ($ Assoc_Array);
// Imprima los datos JSON
eco "

Los valores de JSON son:
". $ jsondata;
unset ($ asociación [103]);
// imprime los valores de la matriz
eco "

Los valores de la matriz después de eliminar son:
";
print_r ($ Assoc_Array);
// Convertir la matriz a datos JSON
$ jSondata = JSON_ENCODE ($ Assoc_Array);
// Imprima los datos JSON
eco "

Los valores JSON de la matriz modificada son:
". $ jsondata;
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior.

Ejemplo-4: Convierta una matriz multidimensional en datos JSON

Cree un archivo PHP con el siguiente script para conocer la forma de convertir una matriz asociativa multidimensional en datos JSON. Los valores de la matriz y los datos JSON convertidos de la matriz se imprimirán en la salida.

// declarar una matriz multidimensional
$ cursos = array (
"Departamento" => "CSE",
"semestre" => 2,
formación(
"CSE-202" => "C Programación",
"CSE-203" => "Diseño de lógica digital",
"CSE-204" => "Algoritmo",
"Math-102" => "Matemáticas"
)
);
// imprime los valores de la matriz
eco "Los valores de la matriz son:
";
print_r ($ cursos);
// Convertir la matriz a datos JSON
$ JSondata = JSON_ENCODE ($ cursos);
// Imprima los datos JSON
eco "

Los valores de JSON son:
". $ jsondata;
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior.

Ejemplo-5: Convierta un objeto en datos JSON

Cree un archivo PHP con el siguiente script para conocer la forma de convertir un objeto en datos JSON. Se ha definido una clase llamada TestClass en el guión que tiene 3 variables públicas. A continuación, se ha declarado la variable del objeto y las variables de clase se han inicializado usando el objeto. Las propiedades del objeto y los valores JSON convertidos del objeto se imprimirán en la salida.

// declarar una clase simple
clase TestClass
público $ var1;
público $ var2;
público $ var3;

// declarar un objeto de la clase
$ objeto = nuevo TestClass ();
// Inicializar las variables de la clase
$ objeto-> var1 = "bueno";
$ objeto-> var2 = "mejor";
$ objeto-> var3 = "best";
// Imprimir las propietarias del objeto
eco "Los valores de la propiedad del objeto son:
";
print_r ($ objeto);
// convertir el objeto en datos JSON
$ jSondata = json_encode ($ objeto);
// Imprima los datos JSON
eco "

Los valores de JSON son:
". $ jsondata;
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior.

Ejemplo-6: convierta una matriz en datos JSON usando JSON_PRESERVE_ZERO_FRACTION

Cree un archivo PHP con el siguiente script para convertir la matriz de datos fraccionales en datos JSON preservando el valor de fracción cero.

El valor de BitMask, JSON_PRESERVE_ZERO_FRACTION se ha utilizado en el segundo argumento de la función JSON_ENCODE () para preservar los valores fraccionales cero de la matriz. Los valores de la matriz y los datos JSON con fracción cero y sin fracción cero se imprimirán en la salida.

// declarar una variedad de datos numéricos
$ num_array = array (78.56, 80.0, 45.09, 51.0);
// imprime los valores de la matriz
eco "Los valores de la matriz son:
";
print_r ($ num_array);
// Convertir la matriz a datos JSON
$ jSondata = json_encode ($ num_array);
// Imprima los datos JSON
eco "

Los valores de JSON son:
". $ jsondata;
// Convertir la matriz a los datos JSON utilizando JSON_PRESERVE_ZERO_FRACTION
$ jSondata = json_encode ($ num_array, json_preserve_zero_fraction);
// Imprima los datos JSON
eco "

Los valores de JSON después de preservar la fracción cero son:
". $ jsondata;
?>

Producción:

La siguiente salida aparecerá después de ejecutar el script anterior.

Conclusión

Las formas de convertir los valores de matriz y las propiedades del objeto utilizando la función JSON_ENCODE () se han explicado en este tutorial utilizando ejemplos simples. Espero que los usuarios de PHP puedan usar esta función correctamente después de leer este tutorial.