Une question? Pas de panique, on va vous aider! problème de lecture
9 février 2015 à 13:55:13
Bonjour à tous,
J'ai un petit souci avec le json et j'aurai besoin de votre aide car malgré toutes les recherches, je ne sais plus si le problème vient du fichier json qui est mal créé ou si c'est un problème de lecture. Je vous montre ce que j'ai fait pas à pas. Lire fichier json php http. J'ai créé un fichier json avec du php à partir d'un fichier xml de la manière suivante:
$results = array();
foreach($xml->ville as $ville)
{
$results[] = array(
'localite' => utf8_encode($ville->localite),
'latitude' => utf8_encode($ville->latitude),
'longitude' => utf8_encode($ville->longitude));}
$j = json_encode($results, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE);
echo $j;
Cela me donne comme résultat:
ie: le résultat montre seulement les 5premiers éléments, il y en a bien plus comme vous le remarquerez ( 412). array(412) { [0]=> object(stdClass)#2 (1) { ["localite"]=> string(9) "ANDERLUES"} [1]=> object(stdClass)#3 (1) { ["localite"]=> string(9) "ANTWERPEN"} [2]=> object(stdClass)#4 (1) { ["localite"]=> string(5) "BARRY"} [3]=> object(stdClass)#5 (1) { ["localite"]=> string(5) "BARRY"} [4]=> object(stdClass)#6 (1) { ["localite"]=> string(5) "BARRY"}
Dans un autre fichier php ou dans un script javascript, j'aimerai récupérer toutes les valeurs des champs localité.
Lire Fichier Json Php Mysql
On le remarque, car ils sont sur la même ligne verticale. Pour accéder à nos tableaux, nous allons reprendre notre code précédent et lui apporter de légères modifications. $json = file_get_contents(« »);
$date_jour = $parsed_json->{'response'}->{'features'}->{'date'};
$heure_cac40 = $parsed_json->{'cotation_bourse'} [0] ->{'bourse'}->{'heure'};
$minute_cac40 = $parsed_json->{'cotation_bourse'} [0] ->{'bourse'}->{'minute'};
$nom_compagnie = $parsed_json->{'cotation_bourse'} [0] ->{'total'}->{'compagnie'};
$cotation_total = $parsed_json->{'cotation_bourse'} [0] ->{'total'}->{'cotation'};
$tendance_total = $parsed_json->{'cotation_bourse'} [0] ->{'total'}->{'tendance'};? Json - PHP lire et à écrire à partir d'un fichier JSON. >
Comme vous le constatez le il suffit d'indiquer le numéro du tableau entre crochet derrière l'objet qui contient le tableau, donc cotation_bourse, pour pouvoir y accéder, ici le tableau [0] correspond au premier tableau, je récupère ainsi les informations contenues dans celui-ci de la même manière que pour le premier exemple, en passant d'objets en objet.
Lire Fichier Json Php 5
Modifiez la à votre sauce si vous avez besoin de tel ou tel caractère. if (isset($_POST['mot']) &&! empty($_POST['mot'])) {
$motRecherche = urlencode(cleanString($_POST['mot']));
$dir = 'cache';
$match = '';
foreach (glob($dir. '/*') as $fichier) {
if (basename($fichier, '') == $motRecherche) {
$match = $fichier;}}} Nous vérifions que les données reçues du formulaire ne sont pas vides. Puis nous passons ces données dans la fonction vue précédemment. Enfin, nous allons vérifier la présence du fichier de cache de la requête. Lire fichier json php 5. Pour cela, nous utilisons la fonction basename. Elle permet de récupérer uniquement le nom du fichier (sans le). Nous utilisons aussi la fonction blog qui permet de rechercher des fichiers qui répondent à une certaine recherche. Glob ne peut rechercher des fichiers que localement. Si jamais le fichier de cache est trouvé, le nom du fichier est assigné à la variable $match. if ($match! = '' && (time() - filemtime($match) < 60)) {
$raw = file_get_contents($match);
$json = json_decode($raw);} else {
$url = ".
";}}else {
echo "Aucune recherche effectuée. ";}? >