bei der Abfrage eines Kurses hab ich folgendes Problem:
trage ich das Kürzel von Hand ein, habe ich folgende Ausgabe:
$json_quote_one = file_get_contents('https://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol=AVTX&apikey=$api_key');
Array
(
[Global Quote] => Array
(
[01. symbol] => AVTX
[02. open] => 18.7000
[03. high] => 34.4600
[04. low] => 16.6500
[05. price] => 21.7500
[06. volume] => 31534634
[07. latest trading day] => 2024-03-28
[08. previous close] => 4.7500
[09. change] => 17.0000
[10. change percent] => 357.8947%
)
)
Mache ich es über die Variable, sieht es so aus:
$json_quote_one = file_get_contents('https://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol=$top_one_ticker&apikey=$api_key');
und das Array ist leer
Array
(
[Global Quote] => Array
(
)
)
aber kopiere ich die Ausgabe in die Abfrage, geht es wieder. Die Variable mit dem Wert ist eine Stringvariable.
$top_one_ticker = GetValueString (14878);
function=GLOBAL_QUOTE&symbol=$top_one_ticker&apikey=$api_key'";
$json_quote_one = file_get_contents('https://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol=$top_one_ticker&apikey=$api_key');
$data_one = json_decode($json_quote_one,true);
print_r($data_one);
1007
30. März 2024 um 06:31
2
Teste mal
'https://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol='.$top_one_ticker.'&apikey=$api_key'
SmartHomeSchweiz:
Mache ich es über die Variable, sieht es so aus:
$json_quote_one = file_get_contents('https://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol=$top_one_ticker&apikey=$api_key');
und das Array ist leer
Variablen werden bei einfachen Anführungszeichen nicht aufgelöst: PHP: Strings (Zeichenketten) - Manual
Michael
ich hab hier noch ein zweites Fragezeichen. die Werte schreibe ich in eine Variable, dort wird der Wert auch korrekt ausgegeben. zB. 0.105, Zusätzlich schreibe ich den wert in eine Stringvarible, dort wird dieser gerundet auf 1. Ich finde meinen Fehler nicht.
1007
5. April 2024 um 07:42
6
Wie sieht den der Teil des Scriptes aus der den String erstellt.
$data_one_symbol = $data_one['Global Quote']['01. symbol'];
$data_one_open = $data_one['Global Quote']['02. open'];
$data_one_high = SetValue(34608, $data_one['Global Quote']['03. high']);
$data_one_low = SetValue(15511, $data_one['Global Quote']['04. low']);
$data_one_price = $data_one['Global Quote']['05. price'];
$data_one_latest = $data_one['Global Quote']['07. latest trading day'];
$data_one_ch_prev = $data_one['Global Quote']['08. previous close'];
$data_one_change = $data_one['Global Quote']['09. change'];
$data_one_ch_proz = SetValue(17819, $data_one['Global Quote']['10. change percent']);
SetValue(34979, "$data_one_symbol - Low:$data_one_low - High:$data_one_high - $data_one_ch_proz");
1007
5. April 2024 um 09:17
8
Das kann so nicht funktionieren.
SetValue liefert folgendes :
Konnte der Befehl erfolgreich ausgeführt werden, liefert er als Ergebnis TRUE, andernfalls FALSE.
Also der Wert mit Setvalue in die Variable geschrieben und dann wird
$data_one_high mit TRUE ( also 1 ) gesetzt.
ohh je, danke. Manchmal wärs so einfach.