Bonjour

Je m initie à la lecture de fichier JSON et avec ce code, tout fonctionne correctement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
$url="https://eodhistoricaldata.com/api/eod/AAPL.US?api_token=OeAFFmMliFG5orCUuwAKQ8l4WWFQ67YX&period=d&fmt=json";
$timestamp_debut = microtime(true);
 
$string = file_get_contents($url);
$json_a = json_decode($string, true);
 
$timestamp_fin = microtime(true);
$difference_ms = $timestamp_fin - $timestamp_debut;
echo "Durée dExécution du script : " . $difference_ms . ' secondes.<br/>';
 
foreach ($json_a as $person_name => $person_a) {
    echo $person_a['date'];
}
J'essaie de faire la meme chose avec CUrl mais je ne recupere rien, le resultat du vardump est : Null
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
$url="https://eodhistoricaldata.com/api/eod/AAPL.US?api_token=OeAFFmMliFG5orCUuwAKQ8l4WWFQ67YX&period=d&fmt=json";
 
$timestamp_debut = microtime(true);
 
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_TIMEOUT, 3);    
curl_setopt($ch, CURLOPT_URL,$url);
$result = curl_exec($ch);
curl_close($ch);
 
$json_data = json_decode($result, true);
var_dump($json_data);
foreach ($json_data as $person_name => $person_a) {
    echo $person_a['date'];
}
 
 
$timestamp_fin = microtime(true);
$difference_ms = $timestamp_fin - $timestamp_debut;
echo "Durée dExécution du script : " . $difference_ms . ' secondes.<br/>';
J ai cherché l'erreur mais la seule chose que j' ai trouvé qui expliquerait un tel résultat serait que la syntaxe du fichier lu ne serait pas correcte, plus précisément que les " ne seraient pas employés mais étant donné que c est la même chose que je lis, je ne comprends vraiment pas.

Pouvez vous m'indiquer d'où provient mon erreur ?


Merci de votre aide