2017-08-24 46 views
0

說我有一個格式錯誤路徑/public/var/www/html/images\uploads\真實路徑VS str_replace函數正常化斜線

是否有這兩種方法之間的任何性能優勢,以「正常化」的斜線,或者是它的做事只是以不同的方式?

  1. realpath($path) . DIRECTORY_SEPARATOR
  2. str_replace('\\', '/', $path);
+0

只是瞥了一眼M.Cummings文件路徑規範化器。作曲家:'phpclasses/file-path-normalizer'。如果你想避免realpath,但想要比str_replace更徹底的東西。 – Progrock

回答

0

真實路徑()可能會,可能確實需要一點點更多的計算,但它做str_replace函數比多()會。至於你將使用哪個取決於你,取決於應用程序。 realpath()不僅可以修復字符串的格式,還可以通過該名稱驗證文件是否存在。此外,在大多數情況下,使用realpath()將使您的代碼更易讀易懂,因爲它的命名更符合其功能(取決於應用程序)。

realpath()

+0

由於實時路徑可以擴展符號鏈接,因此它必須對文件系統進行爬網,而str_replace從不會查看它。 – Progrock