{"id":26362,"date":"2021-06-20T13:23:00","date_gmt":"2021-06-20T10:23:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=26362"},"modified":"2021-10-18T02:59:11","modified_gmt":"2021-10-17T23:59:11","slug":"comprimi-le-immagini-per-il-sito-web-utilizzando-resmush-it-in-php","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/it\/comprimi-le-immagini-per-il-sito-web-utilizzando-resmush-it-in-php\/","title":{"rendered":"Comprimi le immagini per il sito web utilizzando reSmush.it in PHP"},"content":{"rendered":"<p>Inserito in <a href=\"https:\/\/artisansweb.net\/category\/php\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">PHP<\/a><\/p>\n<p>Le immagini rendono il tuo sito web bello e aggiungono una migliore esperienza utente per i visitatori. Tuttavia, le immagini possono anche influenzare le prestazioni del sito e rallentare la velocit\u00e0 del tuo sito. E sappiamo tutti che i siti web pi\u00f9 lenti non possono avere successo su Internet.<\/p>\n<p>In questo articolo, ti mostriamo come comprimere le immagini per i siti Web utilizzando reSmush.it in PHP. Utilizzando questo servizio gli utenti possono ridurre le dimensioni delle immagini del proprio sito web. Aiuter\u00e0 a migliorare la velocit\u00e0 della pagina. reSmush.it \u00e8 uno strumento gratuito per la compressione delle immagini. Un utente pu\u00f2 comprimere tutte le immagini che desidera. Non esiste un tale limite al numero di immagini.<\/p>\n<p>Al momento della stesura di questo articolo, <a href=\"https:\/\/resmush.it\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">reSmush.it<\/a> comprime <a href=\"https:\/\/resmush.it\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">finora<\/a> pi\u00f9 di 7 miliardi di immagini e continua a contare. Questo numero dimostra che \u00e8 un servizio abbastanza popolare tra gli utenti.<\/p>\n<h3>Iniziare<\/h3>\n<p>Creiamo un semplice form dove l&#8217;utente pu\u00f2 caricare l&#8217;immagine. Dopo aver inviato l&#8217;immagine, utilizzando PHP invieremo l&#8217;immagine ai servizi reSmush.it e riceveremo la versione ottimizzata della nostra immagine.<\/p>\n<pre><code>&lt;form method=\"post\" enctype=\"multipart\/form-data\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;p&gt;&lt;input type=\"file\" name=\"image\" accept=\"image\/*\" \/&gt;&lt;\/p&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;input type=\"submit\" name=\"submit\" value=\"Submit\"&gt;\n&lt;\/form&gt;<\/code><\/pre>\n<p>Qui abbiamo aggiunto un input di file e un pulsante di invio. Abbiamo anche utilizzato un attributo <code>accept=\"image\/*\"<\/code>che consente di selezionare solo file di immagine.<\/p>\n<h3>Comprimi immagini per siti Web in PHP<\/h3>\n<p>Ora dobbiamo interagire con l&#8217;API di reSmush.it. Stiamo per scrivere un codice che esegue i seguenti passaggi.<\/p>\n<ul>\n<li>Carica l&#8217;immagine sul nostro server.<\/li>\n<li>Invia l&#8217;immagine caricata all&#8217;endpoint API di reSmush.it.<\/li>\n<li>Riceve il percorso di un&#8217;immagine ottimizzata.<\/li>\n<li>Archivia questa versione ottimizzata sul nostro server sostituendo l&#8217;immagine originale.<\/li>\n<\/ul>\n<p>Prima di procedere assicurati di aver abilitato l&#8217;estensione cURL sul tuo server.<\/p>\n<pre><code>&lt;?php\nif (isset($_POST['submit'])) {\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\/\/allowed file types\n\u00a0\u00a0\u00a0\u00a0$arr_file_types = ['image\/png', 'image\/gif', 'image\/jpg', 'image\/jpeg'];\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0if (!(in_array($_FILES['image']['type'], $arr_file_types))) {\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0die('Only image is allowed!');\n\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0if (!file_exists('uploads')) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0mkdir('uploads', 0777);\n\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0move_uploaded_file($_FILES['image']['tmp_name'], 'uploads\/'. $_FILES['image']['name']);\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\/\/ optimize image using reSmush.it\n\u00a0\u00a0\u00a0\u00a0$file = getcwd(). '\/uploads\/'. $_FILES['image']['name'];\n\u00a0\u00a0\u00a0\u00a0$mime = mime_content_type($file);\n\u00a0\u00a0\u00a0\u00a0$info = pathinfo($file);\n\u00a0\u00a0\u00a0\u00a0$name = $info['basename'];\n\u00a0\u00a0\u00a0\u00a0$output = new CURLFile($file, $mime, $name);\n\u00a0\u00a0\u00a0\u00a0$data = array(\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\"files\" =&gt; $output,\n\u00a0\u00a0\u00a0\u00a0);\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0$ch = curl_init();\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_URL, 'http:\/\/api.resmush.it\/?qlty=80');\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_POST,1);\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_POSTFIELDS, $data);\n\u00a0\u00a0\u00a0\u00a0$result = curl_exec($ch);\n\u00a0\u00a0\u00a0\u00a0if (curl_errno($ch)) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$result = curl_error($ch);\n\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0curl_close ($ch);\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0$arr_result = json_decode($result);\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\/\/ store the optimized version of the image\n\u00a0\u00a0\u00a0\u00a0$ch = curl_init($arr_result-&gt;dest);\n\u00a0\u00a0\u00a0\u00a0$fp = fopen(getcwd(). '\/uploads\/'. $name, 'wb');\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_FILE, $fp);\n\u00a0\u00a0\u00a0\u00a0curl_setopt($ch, CURLOPT_HEADER, 0);\n\u00a0\u00a0\u00a0\u00a0curl_exec($ch);\n\u00a0\u00a0\u00a0\u00a0curl_close($ch);\n\u00a0\u00a0\u00a0\u00a0fclose($fp);\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0echo \"File uploaded successfully.\";\n}\n?&gt;<\/code><\/pre>\n<p>Nel codice sopra, ho impostato il valore della qualit\u00e0 su &quot;80&quot;, che \u00e8 consigliato. Puoi regolare questo numero su pi\u00f9 o meno. Stiamo memorizzando le immagini all&#8217;interno della <code>uploads<\/code>directory. Nel tuo caso, puoi modificare questa directory.<\/p>\n<p>Spero che tu capisca come comprimere le immagini per il sito web in PHP usando reSmush.it. Mi piacerebbe sentire i tuoi pensieri e suggerimenti nella sezione commenti qui sotto.<\/p>\n<h4>articoli Correlati<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/tinypng-comprimi-le-immagini-usando-php\/\" title=\"TinyPNG Comprimi le immagini usando PHP\">TinyPNG Comprimi le immagini usando PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/come-caricare-e-comprimere-immagini-in-laravel\/\" title=\"Una guida per caricare e comprimere immagini in Laravel\">Una guida per caricare e comprimere immagini in Laravel<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/ottimizzazione-delle-immagini-utilizzando-il-pacchetto-di-ottimizzazione-delle-immagini-web-di-artigiani\/\" title=\"Ottimizzazione delle immagini utilizzando il pacchetto di ottimizzazione delle immagini\/web di artigiani\">Ottimizzazione delle immagini utilizzando il pacchetto di ottimizzazione delle immagini\/web di artigiani<\/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 ti mostriamo come comprimere le immagini per il sito web che velocizzano il tuo sito web. Ci\u00f2 migliora le prestazioni del tuo sito e aggiunge un utente migliore..<\/p>\n","protected":false},"author":1,"featured_media":21612,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[276],"tags":[846],"class_list":["post-26362","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\/26362","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=26362"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts\/26362\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/media\/21612"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/media?parent=26362"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/categories?post=26362"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/tags?post=26362"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}