PHP json_decode commence par 0

tgilbert Messages postés 7 Statut Membre -  
Zep3k!GnO Messages postés 2049 Statut Membre -
Bonjour,

Quand je décode cette chaine il m'enlève les 0 de devant.

$var = "0610101010";
ex: $result = json_decode($var);

echo $result ;
=> 610101010

Comment on fait pour garder les 0 ?
A voir également:

5 réponses

Zep3k!GnO Messages postés 2049 Statut Membre 200
 
Si je ne m'abuse, il faudrait que ton entrée soit formatée différemment :

<?php
$var = '"0610101010"';
$result = json_decode($var);

var_dump($result) ; // ==> string(10) "0610101010"

?>
0
tgilbert Messages postés 7 Statut Membre
 
C 'est pas tout à fait comme ça.

Le code il se présente :

$param contient tout les éléments Get

La fonction permet de construire l'url

function implode_assoc($param) {
$res = '';
$amp = '';
if (sizeof($param)>1) {
$amp = '&';
}

foreach ($param as $key => $val) {

$decoded = json_decode($val);
if (isset($decoded)) {
$res .= $amp . $key . '=' .$decoded ;
} else {
$res .= $amp . $key . '=' .$val;
}
}
return $res;
}

si tu as une idée ....

je sèche un peu, j 'ai essayé d'utiliser utf8_encode mais ca ne change rien.
0
Zep3k!GnO Messages postés 2049 Statut Membre 200
 
$param contient tout les éléments Get

Comment ça, des paramètres que tu reçois via une URL grace à la méthode GET ??

j 'ai essayé d'utiliser utf8_encode

Pourquoi ? t'as un encodage particulier ?

Expliques un peu plus le contexte STP et pourquoi tu veux utiliser du json_decode ?
0
tgilbert Messages postés 7 Statut Membre
 
C'est parce que j 'ai des paramètres qui sont encodés avec des caractères spéciaux .

Je reconstruis l'url avec des nouveaux paramètres pour rediriger la page.

C' est un code existant, quand j 'ai voulu faire passer en paramètre le numéro de tél, je me suis rendu compte qu'il manquait le 0 devant.

J'ai cherché d'ou ca pouvait venir et je me suis rendu compte que le json_decode me faisait disparaitre les 0 de devant.

Je crois que je vais essayer d'encoder le tel en htmlentities, on verra bien.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Zep3k!GnO Messages postés 2049 Statut Membre 200
 
en htmlentities ça ne changera pas ton problème à mon avis car la il n'est nullement le cas d'entitées...

Ce qu'il faudrait voir c'est le code de la page qui t'envoies ces infos, comment sont encodées les informations ?

Sinon y a la méthode crados qui consiste a faire un test dans ta fonction pour savoir si la clé du tableau dans le foreach c'est "tel" mais ca pue grave....
0