PHP x86:在沒有外部程式的情況下確定超過2 GB 的檔案大小
在PHP 中,檢索大於2 的檔案的檔案大小32 位元平台上的GB 提出了挑戰。像 filesize()、stat() 和 fseek() 這樣的標準 PHP 函數都無法達到要求。
為了解決這個問題,出現了一個名為 大檔案工具 的綜合開源專案。它包含在 PHP 中管理超過 2 GB 的檔案的巧妙技術,甚至在 32 位元系統上也是如此。
大檔案工具所採用的一種方法嘗試利用特定於平台的 shell 指令。對於 Windows,它使用 shell 替換修飾符。對於 *nix 和 macOS,它使用 stat 指令。如果這些失敗,它將轉向 COM(特別適用於 Windows)。作為最後的手段,它會恢復為 filesize()。
以下程式碼片段顯示如何使用此方法來決定大檔案的檔案大小:
<code class="php">function filesize64($file) { $size = null; // Try shell command if (function_exists('exec') && !ini_get('safe_mode')) { $cmd = (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') ? "for %F in (\"$file\") do @echo %~zF" : "stat -c%s \"$file\""; @exec($cmd, $output); if (is_array($output) && ctype_digit($size = trim(implode("\n", $output)))) { return $size; } } // Try Windows COM interface if (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN' && class_exists("COM")) { try { $fsobj = new COM('Scripting.FileSystemObject'); $f = $fsobj->GetFile(realpath($file)); $size = $f->Size; } catch (Exception $e) {} if (ctype_digit($size)) { return $size; } } // Fall back to filesize() return filesize($file); }</code>
以上是如何在 x86 系統上的 PHP 中確定超過 2 GB 的檔案大小?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文比較了PHP和ASP.NET,重點是它們對大規模Web應用程序,性能差異和安全功能的適用性。兩者對於大型項目都是可行的,但是PHP是開源和無關的,而ASP.NET,

本文討論了PHP數據對象(PDO),這是PHP中數據庫訪問的擴展名。它通過準備好的語句及其對MySQLI的好處,包括數據庫抽象和更好的錯誤處理,強調了PDO在增強安全性方面的作用。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

記事本++7.3.1
好用且免費的程式碼編輯器

禪工作室 13.0.1
強大的PHP整合開發環境

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Atom編輯器mac版下載
最受歡迎的的開源編輯器