Maison >développement back-end >tutoriel php >Numéros JSON en PHP : chaînes ou nombres ?

Numéros JSON en PHP : chaînes ou nombres ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-28 00:09:11891parcourir

JSON Numbers in PHP: Strings or Numbers?

Numéros JSON : chaînes ou nombres ?

La fonction json_encode de PHP est connue pour sa tendance à encoder les nombres sous forme de chaînes, ce qui entraîne un comportement inattendu dans JavaScript. Par exemple, le tableau { "id": "3", ... } est interprété comme une chaîne en JavaScript, provoquant l'échec des opérations numériques.

Pour résoudre ce problème, PHP propose une solution : le JSON_NUMERIC_CHECK drapeau. Introduit dans PHP 5.3.3, cet indicateur garantit que les nombres sont automatiquement convertis dans leur représentation JSON appropriée.

Considérez l'utilisation suivante :

$arr = array( 'row_id' => '1', 'name' => 'George' );
echo json_encode( $arr, JSON_NUMERIC_CHECK );

Cela produira { "row_id":1 ,"name":"George" }, où les nombres comme "1" sont correctement traités comme des valeurs numériques.

En employant le Indicateur JSON_NUMERIC_CHECK, les développeurs peuvent empêcher json_encode d'interpréter mal les nombres et garantir la compatibilité avec les opérations numériques de JavaScript.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn