PHP TinyPNG 是一款非常實用的圖像壓縮工具,具有簡單易用,壓縮效果好等優點。在網頁制作過程中,由于圖片的占用空間往往是比較大的,導致加載速度慢,這非常不利于用戶的體驗,而使用 PHP TinyPNG 可以輕松地解決這個問題。接下來,我們將詳細介紹 PHP TinyPNG。
在許多網站中,圖片的大小是頁面空間占用的最大部分之一,特別是對于那些包含大量圖片的站點。無法忍受的是長時間等待網頁的加載,尤其是連接速度較慢的情況下。然而,通過使用 PHP TinyPNG ,您可以輕松地將圖像文件壓縮到原始大小的幾乎一半,而不會影響它們的視覺質量。
與其他圖像壓縮工具相比,PHP TinyPNG 的優點在于其處理技術很好,可以保證圖像的質量不會受到損壞。它通過刪除無關的信息來減小文件大小,因此圖像會壓縮得更強大更小,而且光滑度和細節不會因此降低。讓我們來看一下 PHP TinyPNG 的一些主要功能:
1. 壓縮報告
您可以使用 PHP TinyPNG 壓縮器來查看壓縮報告,其中包括有關圖像已壓縮的細節信息。這包括減小的文件大小,壓縮后的圖像寬度和高度,以及被刪除的像素等等。例如,在以下代碼中,您可以使用 TinyPNG Pro API 壓縮 PNG 圖像。
// Include API include('tinify/vendor/autoload.php'); // Initiate API $tinify = new Tinify\Tinify(); $tinify->setKey("YOUR_API_KEY"); // Compress Image $tinyURL = $tinify->fromFile('example.png')->toUrl();
2. 批量壓縮
如果您需要批量處理圖像文件,例如在許多產品圖像上,就需要優化空間占用,您可以使用 PHP TinyPNG 進行批量處理。多維數組是一種常見的方式來做到這一點。以下代碼可以壓縮文件夾中的所有 PNG 圖像,并將其存儲在新文件夾中。
function compressDir($dir_name) { // Compression API Key Tinify\setKey('YOUR_API_KEY'); // Compressed Folder $folder_compressed = 'images-compressed'; // Compress Images in Folder if(is_dir($dir_name)) { if($dh = opendir($dir_name)) { while(($file = readdir($dh)) !== false) { if($file != '.' && $file != '..') { if(filetype($dir_name . '/' . $file) == 'dir') { createDir($dir_name . '/' . $file); } else { // Compress Image compressImage($dir_name . '/' . $file, $folder_compressed, true); } } } closedir($dh); } } }
3. 自動壓縮
對于那些需要常規更新自己頁面的網站,為了確保圖像文件能夠保持小,PHP TinyPNG 還提供了自動壓縮功能。該功能通過將圖像處理鏈接指向 PHP TinyPNG,自動將文件壓縮大小最小。以下代碼片段可以將文件自動壓縮,并返回可使用的圖像鏈接。
/** Compress Image Automatically **/ function compress($input_image, $output_image, $compression_level) { // Compression API Key Tinify\setKey('YOUR_API_KEY'); // Compress Image $source = Tinify\fromFile($input_image); $source->toFile($output_image); // Compression Ratio $original_size = filesize($input_image); $compressed_size = filesize($output_image); $ratio = round(($compressed_size / $original_size) * 100, 2); // Output Link $output_image_url = 'https://api.tinify.com/images/' . basename($output_image); $api_key_url = (strstr(Tinify\getCompressionCount(), "/")) ? substr(Tinify\getCompressionCount(), stripos(Tinify\getCompressionCount(), "/")) : ''; $output_link = '<a href="' . $output_image_url . '" target="_blank">' . basename($output_image) . ' (' . $api_key_url . ') ' . $ratio . '%</a>'; // Output Link return $output_link; }綜上所述,PHP TinyPNG 是一個非常強大的圖像壓縮工具,通過幫助您減少圖像文件的大小,可以顯著提高網頁加載速度。它擁有許多功能,例如批量壓縮,自動壓縮和壓縮報告等,使其更加豐富和適用。通過探索以下功能和使用示例,使用 PHP TinyPNG 的設置過程不會比您預期的復雜。
上一篇ajax引用json文件
下一篇php this 數組