899 Shares 7753 views

formato JSON: descripción, ejemplo

Las variables, arrays y objetos – una forma familiar y conveniente de presentación de los datos. Describir los datos tomados en el navegador en JavaScript que no necesariamente servidor de lenguaje PHP. formato JSON le permite compilar en un solo conjunto, y no centrarse en el lenguaje de programación. Los datos se convierten en un par de "nombre = valor". El valor en cada uno de ellos también puede ser una colección de estos pares.

JSON adoptada asociadas con los aparatos y objetos de JavaScript. Este último es bastante justificado, ya que JSON = Object Notation formato de JavaScript. En los últimos años, sobre todo dinámico, mucho ha cambiado. Que fue creado para un propósito específico, a menudo trae resultados inesperados y ha abierto nuevos horizontes.

El intercambio de datos: el navegador – servidor

La tecnología AJAX se ha convertido en tradicional, la actualización normal de toda la página ya no es popular. El visitante, la apertura del sitio, inicia una serie de intercambios de datos parciales, cuando algunas páginas varían sólo en el lugar que haya vencido.

Se cree que la apariencia JSON asociada a ella AJAX, pero en realidad asociativos matrices de JavaScript y Object Notation (especialmente descripción de la sintaxis y el uso de objetos) son mucho más relacionada con la proporción de JSON, que el intercambio de datos entre el navegador y el servidor.

Dado que el contenido de las páginas de sitios contemporáneos realmente se ha convertido en "masiva" (surround), y la eficacia del formato para el intercambio de datos ha adquirido un significado especial. No podemos decir que fue la nueva representación JSON de los datos, pero el hecho de que había sido durante mucho tiempo el elemento de sintaxis JavaScript es esencial.

El uso del alfabeto cirílico en el nombramiento de las variables – fenómeno muy inesperada (sin sentido), pero funciona en las últimas versiones de Chrome, Firefox, e incluso, en Internet Explorer 11.

Cirílico y JSON

Por supuesto, usar un fenómeno completamente inesperado, no vale la pena recordar la facilidad con que los valores de las variables registradas en las letras rusas, se convirtió en un galimatías, lo que puedo decir acerca de los nombres, especialmente extranjeros.

Es dudoso que la iniciativa en apoyo de nombres cirílico fuera del entorno del navegador, con el que constantemente tienen que tratar. Pero este hecho merece atención por la sencilla razón de que el formato JSON – es una oportunidad para escribir los nombres y los valores que desee para el desarrollador. Esto es importante porque en la descripción de cada problema ámbito de aplicación, ya que se requiere, simplifica en gran medida la depuración y reduce los errores.

No importa qué tipo de tenía una base de la innovación sintáctica – JSON, es importante que le dio el derecho legal y una verdadera oportunidad para poner la línea: "cualquier nombre = valor".

Debemos rendir homenaje a la lengua JavaScript: que proporciona la sintaxis no requiere que el desarrollador y que no impone nada. Desarrollador utiliza libremente la sintaxis del lenguaje para la formación óptima del modelo de datos y el algoritmo que utilizan.

PHP y JSON

Tomando los datos en formato JSON, el servidor (a través de PHP, en particular) permite que manejen como es y para devolver el resultado de vuelta al navegador en el mismo formato. Fuente matriz PHP:

  • $ CJSON = array ( "a" => "alfa", "b" => "beta", "g" => "gamma").

La conversión de un formato JSON para su transmisión al navegador:

  • $ CJS = json_encode ($ cJSON) .

resultado:

  • { "A": "alfa" , "b": "beta", "g": "gamma"}.

Que se indica en la foto de anidación.

Aquí formado por la matriz se añadió un nuevo elemento "a sí mismo" con el índice automático "0", y luego de nuevo con este índice "z".

Función inversa – json_decode () convierte una cadena JSON en una matriz PHP. Resultados similares se pueden lograr mediante la manipulación de las funciones de PHP: implode () y estallan (). En algunos casos, esta opción es preferible.

nivel de anidamiento

Los elementos se pueden anidar uno en el otro como el lado del navegador o del lado del servidor. En la práctica formato JSON (descripción RFC 4627 estándar) proporciona significativamente más de 4 niveles de anidamiento, pero no se debe abusar de esta posibilidad.

Lo mejor es no ir más allá de los límites de la suficiencia razonable es, hace que el código legible, fácil de depurar y comprensión de otros desarrolladores.

JSON se puede llevar a las estructuras de datos que el XML sea más fácil, comprendidos los seres humanos y computadoras. Esto es cierto, cuando la cantidad de datos es pequeña y el nivel de anidamiento del desarrollador eligió sabiamente. En todos los demás casos, contar el número de tramos y comprender la estructura de los datos es difícil, ya que el lado del navegador y el servidor.

archivos JSON

Aplicación de JSON en la práctica a menudo no se limita a la percepción de cadena corta disponible. Cualquier estructura de datos son siempre pragmático. Al mismo JSON se puede aplicar de manera efectiva en los datos reales del problema (empresa estatal), así como para la aplicación de los datos temporales (caché de objetos).

empresas estatales y JSON-formato: Ejemplo

Normalmente, la grabación sobre una persona – un apellido, nombre, fecha de nacimiento, profesión, educación, … y unos valores más modestos. Incluso en las compañías discográficas más exigente de una persona no exceda de una docena o dos campos. Esta percepción está disponible y se puede colocar en una fila de base de datos.

Si la empresa emplea a varias personas – es una cosa, pero si decenas de miles – es otra muy distinta. Puede seguir utilizando la base de datos, pero manteniéndolo en un archivo que parece más práctico y más asequible para su uso.

Archivo en formato JSON – un archivo de texto plano. El caso de la dotación de personal, de acuerdo. Leer siempre es posible. Abierta y el cambio también está disponible en cualquier editor de texto que no tiene el hábito de añadir su información patentada en el contenido del archivo. En general, .json * – es puro texto dentro del navegador, y dentro del archivo – cadena.

La imagen muestra un objeto de caché, formando una imagen de ejemplo.

Este es un ejemplo de archivo de contenido que ofrecen los sitios generados volumen de impresión de color en las tazas y la cerámica. Por supuesto, para decidir con un formato JSON, lo abre, muy problemático. Sin embargo, en este y otros casos similares, problemas con la lectura de un archivo que surge es: PHP lee el archivo, lo analiza y lo envía al navegador. los datos de visitantes alterada se devuelve al servidor y escribe de nuevo.

En esta realización, el uso del archivo aparece como una variable que se almacena fuera del código. Si es necesario, la variable se le asigna el valor del archivo, y si se cambia por el visitante en el diálogo, siempre para el sitio, todos los cambios se grabará como es. No hay necesidad de leer y verificar el contenido del archivo.

JSON a menudo se utiliza para el almacenamiento y uso de información confidencial – no es personal, no es necesario ver bien el desarrollador o visitante del sitio.

XML y JSON

"Todo a su tiempo" – conocimiento clásico, se da por sentado, incluso antes de la programación. "No es que no es sólo" – esto también era antes la gente escribió el primer programa inteligible en un lenguaje artificial.

formatos de datos aparecen en las necesidades reales y se basan en el conocimiento alcanzado. En HTML – su trayectoria, en XML – tiene su propio camino, y JSON – lógica es JavaScript objeto extendido a otros idiomas. Para comparar uno con el otro no es la mejor ocupación. A cada uno su propia.

XML maravillosamente hacer frente a sus tareas e ir a la historia está claro que no va a. Un JSON se utilizó hasta 2006, pero no todos los desarrolladores ha considerado que es su deber de declarar ciertas opciones presentan sus datos.

Hubo casos en la práctica cuando BASIC fue escrito programas no usan JSON como tal, sino almacenar perfectamente pares "nombre = valor" y ponerlos a disposición para adaptarse a los algoritmos en el momento adecuado.

Caracteres especiales ( «`»,«~»,«|», …) y formatos de datos

El hábito de trabajar con matrices asociativas y objetos en JavaScript hace uso de JSON natural y cómoda. Realmente es un gran formato, pero la capacidad de compartir y conectarse, la manipulación de cadenas y matrices, tiene raíces mucho más profundas.

Funciones unen / Javascript dividida e implosionan / explotar lenguaje PHP permite conveniente y eficaz utilizar como formato de datos XML, JSON, y su propia versión. Este último suele ser óptima, y los dos primeros son ideales para las opciones de uso general. Si se trata de la transmisión de información a otro desarrollador, servidor, a un archivo o base de datos, XML y JSON es mejor no encontrar. Todos ellos trabajan, ya que la transmisión / recepción de información no necesita comentarios.

El uso de JSON en Android

leer y escribir datos en formato JSON en Android – no sólo la norma de las cosas, sino también un conjunto de objetos, orientados a trabajar con tal formato de datos.

Muchos atribuyen el éxito fenomenal de los sitios de redes sociales para que los miembros y visitantes de estos sitios (Facebook, LinkedIn, Twitter, …) se benefician de los materiales publicados allí.

Se lo utiliza para JSON. Tal vez esto es cierto, pero la cuestión no está en las redes sociales fenomenales, pero el hecho de que, efectivamente, el suministro de información en el formato de "nombre = valor" es conveniente para la programación, y para su uso. En contraste con la estricta y acomplejado «XML» es realmente humana formato amigable.

matrices asociativas

Dio la casualidad de que las variables deben ser descritos (JavaScript) o incluso especificar un valor inicial (PHP). En ambos casos, la variable puede cambiar su tipo es muy fácil. Si es necesario, el lenguaje hace esta conversión automáticamente.

Pero ¿por qué no cambiar la variable y su nombre no aparece en el rendimiento del algoritmo y no desaparece cuando la necesidad de que va a desaparecer? Las matrices asociativas nos permiten resolver este problema, pero entonces el uso de un nombre de variable relativamente dinámico, de la matriz y la sintaxis apropiada seguirán en el punto de uso.

Este hecho es especialmente pronunciada en PHP, pero esto se puede tolerar, como, de hecho, con el símbolo "$" al nombre de la variable y la combinación de "$ this->" dentro del objeto. Al mismo tiempo la programación en JavaScript y PHP, primero realmente sorprendido cómo todo es diferente, pero luego todo se vuelve tan familiar y natural …

Matriz asociativa -> JSON

En este ejemplo, por la biblioteca PHPOffice / PHPWord crea un documento * .docx, y una serie de aProperties contiene las propiedades del documento (autor, empresa, cargo, categoría, fecha, …).

La segunda matriz contiene los datos de la página:

  • orientación (horizontal o normal);
  • dimensiones horizontal y vertical;
  • guiones (campo de la izquierda, superior, inferior, derecha);
  • pies de página.

Formación del documento se realiza en un servidor que ejecuta una biblioteca PHPOffice / PHPWord. El sitio proporciona los valores de la gestión de estas matrices a través de JavaScript. El resultado es devuelto en JSON de vuelta al servidor y se utiliza en los algoritmos en PHP, en sus diseños, que se encuentra en las matrices.

variables dinámicas

formato JSON resuelve el problema de las variables dinámicas. Aquí puede crear, modificar y eliminar variables sintácticas y sin pilas innecesarios. Se ve hermoso y se utiliza en JavaScript.

En este ejemplo GetOjInfo () selecciona el nombre del valor y la importancia del objeto. Inicialmente objeto JSON-serie se asigna a un ojInfo variable, tiene tres elementos: nombre, edad y trabajo. Un poco más adelante añade a la variable de estado.

Después de que el primer operador eliminar la cadena ojInfo pierde edad elemento, después de eliminar el segundo – el trabajo elemento. Si asumimos que la cadena tiene una selección de variables que tienen un significado específico, a través de JSON en realidad puede crear, modificar o suprimir cualquiera de sus conjuntos fuera del campo quirúrgico (sintaxis) y procesamiento de lenguaje de descripción de JavaScript.

formato JSON en tal opción no fue diseñado, pero es posible, práctico y conveniente.