{"id":24404,"date":"2021-05-15T16:02:00","date_gmt":"2021-05-15T13:02:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=24404"},"modified":"2021-10-18T03:15:26","modified_gmt":"2021-10-18T00:15:26","slug":"api-dei-tassi-di-cambio-con-conversione-di-valuta-in-php","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/it\/api-dei-tassi-di-cambio-con-conversione-di-valuta-in-php\/","title":{"rendered":"API dei tassi di cambio con conversione di valuta in PHP"},"content":{"rendered":"<p>Recentemente stavo lavorando al progetto di un cliente in cui avevo bisogno di riscuotere pagamenti da utenti di tutto il mondo. Il cliente che utilizza Razorpay per ricevere pagamenti online. Nel Razorpay \u00e8 necessario convertire il tasso di valuta estera in INR (Rupie indiane) e quindi addebitare il pagamento. Per eseguire questa attivit\u00e0, volevo ottenere l&#8217;API dei tassi di cambio estera che ho trovato in <a href=\"http:\/\/exchangeratesapi.io\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">API dei tassi di cambio<\/a>.<\/p>\n<p>L&#8217;API dei tassi di cambio \u00e8 un servizio open source per i tassi di cambio correnti e storici pubblicati dalla <a href=\"https:\/\/www.ecb.europa.eu\/stats\/policy_and_exchange_rates\/euro_reference_exchange_rates\/html\/index.en.html\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Banca centrale europea<\/a>.<\/p>\n<p>In questo articolo, ti mostrer\u00f2 come utilizzare l&#8217;API dei tassi di cambio e ottenere la quantit\u00e0 di valuta estera.<\/p>\n<h3>Come utilizzare l&#8217;API dei tassi di cambio estero<\/h3>\n<p>Questo servizio fornisce endpoint API. Una volta raggiunti gli endpoint insieme ai parametri, questi restituiscono una risposta appropriata.<\/p>\n<p>Per fornire chiamate API e gestire la risposta, possiamo scegliere Guzzle (client PHP HTTP) o cURL. Entrambi forniscono un modo semplice e affidabile per interagire con le API.<\/p>\n<p>Cominciamo prima con il Guzzle. Installa Guzzle tramite il compositore con il seguente comando:<\/p>\n<pre><code>composer require guzzlehttp\/guzzle<\/code><\/pre>\n<p>Al momento dell&#8217;installazione, puoi dare una chiamata API e ricevere la risposta scrivendo il codice qui sotto.<\/p>\n<pre><code>&lt;?php\nrequire_once 'vendor\/autoload.php';\n\u00a0\nuse GuzzleHttpClient;\n\u00a0\n$client = new Client([\n\u00a0\u00a0\u00a0\u00a0\/\/ Base URI is used with relative requests\n\u00a0\u00a0\u00a0\u00a0'base_uri' =&gt; 'https:\/\/api.exchangeratesapi.io\/',\n]);\n\u00a0\n\/\/ get all rates\n$response = $client-&gt;request('GET', 'latest', [\n\u00a0\u00a0\u00a0\u00a0'query' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'base' =&gt; 'USD',\n\u00a0\u00a0\u00a0\u00a0]\n]);\n\u00a0\nif($response-&gt;getStatusCode() == 200) {\n\u00a0\u00a0\u00a0\u00a0$body = $response-&gt;getBody();\n\u00a0\u00a0\u00a0\u00a0$arr_body = json_decode($body);\n\u00a0\u00a0\u00a0\u00a0print_r($arr_body);\n}<\/code><\/pre>\n<p>Il codice sopra ti d\u00e0 un tasso di conversione del dollaro USD per altre valute. L&#8217;utente pu\u00f2 impostare altri simboli di valuta sulla chiave &#8216;base&#8217;.<\/p>\n<p>Allo stesso modo, gli utenti ottengono un tasso di conversione da una singola valuta. Supponiamo che tu voglia il prezzo INR del dollaro USD.<\/p>\n<pre><code>$response = $client-&gt;request('GET', 'latest', [\n\u00a0\u00a0\u00a0\u00a0'query' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'base' =&gt; 'USD',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'symbols' =&gt; 'INR',\n\u00a0\u00a0\u00a0\u00a0]\n]);<\/code><\/pre>\n<p>L&#8217;API dei tassi di cambio fornisce anche dati storici. In tal caso, \u00e8 necessario passare i valori di una data per le chiavi &quot;start_at&quot; e &quot;end_at&quot;.<\/p>\n<pre><code>$response = $client-&gt;request('GET', 'history', [\n\u00a0\u00a0\u00a0\u00a0'query' =&gt; [\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'base' =&gt; 'USD',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'symbols' =&gt; 'INR',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'start_at' =&gt; '2020-01-01',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'end_at' =&gt; '2020-01-20'\n\u00a0\u00a0\u00a0\u00a0]\n]);<\/code><\/pre>\n<h4>Interagisci con l&#8217;API usando cURL<\/h4>\n<p>Ho preferito usare un Guzzle per interagire con l&#8217;API. Ma se qualcuno vuole usare cURL, pu\u00f2 usare il codice qui sotto. Assicurati di aver abilitato l&#8217;estensione cURL sul tuo server.<\/p>\n<pre><code>&lt;?php\n$url = \"https:\/\/api.exchangeratesapi.io\/latest?base=USD\";\n$ch = curl_init();\ncurl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);\ncurl_setopt($ch, CURLOPT_URL, $url);\n$response = curl_exec($ch);\n$arr_result = json_decode($response);\nprint_r($arr_result);<\/code><\/pre>\n<p>Si tratta di ottenere tassi di cambio esteri in PHP. Spero che tu lo capisca e che tu possa usarlo nel tuo lavoro di sviluppo. Mi piacerebbe sentire i tuoi pensieri o suggerimenti nella sezione commenti qui sotto.<\/p>\n<h4>articoli Correlati<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/trova-la-geolocalizzazione-utilizzando-l-indirizzo-ip-gratuitamente-in-php\/\" title=\"Trova la geolocalizzazione utilizzando l&#039;indirizzo IP gratuitamente in PHP\">Trova la geolocalizzazione utilizzando l&#8217;indirizzo IP gratuitamente in PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/come-leggere-il-testo-dall-immagine-in-php\/\" title=\"Come leggere il testo dall&#039;immagine in PHP\">Come leggere il testo dall&#8217;immagine in PHP<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte di registrazione:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In questo articolo, studiamo come ottenere i tassi di cambio per le valute estere in PHP. Useremo un servizio open source che fornisce endpoint per ottenerli<\/p>\n","protected":false},"author":1,"featured_media":22212,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[276],"tags":[846],"class_list":["post-24404","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-7","tag-affiai-it"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts\/24404","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/comments?post=24404"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts\/24404\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/media\/22212"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/media?parent=24404"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/categories?post=24404"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/tags?post=24404"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}