@@ 1854-1865 (lines=12) @@ | ||
1851 | $mime = $targets[3]; |
|
1852 | ||
1853 | $filenameEncoded = rawurlencode($name); |
|
1854 | if (strpos($filenameEncoded, '%') === false) { // ASCII only |
|
1855 | $filename = 'filename="'.$name.'"'; |
|
1856 | } else { |
|
1857 | $ua = $_SERVER['HTTP_USER_AGENT']; |
|
1858 | if (preg_match('/MSIE [4-8]/', $ua)) { // IE < 9 do not support RFC 6266 (RFC 2231/RFC 5987) |
|
1859 | $filename = 'filename="'.$filenameEncoded.'"'; |
|
1860 | } elseif (strpos($ua, 'Chrome') === false && strpos($ua, 'Safari') !== false && preg_match('#Version/[3-5]#', $ua)) { // Safari < 6 |
|
1861 | $filename = 'filename="'.str_replace('"', '', $name).'"'; |
|
1862 | } else { // RFC 6266 (RFC 2231/RFC 5987) |
|
1863 | $filename = 'filename*=UTF-8\'\''.$filenameEncoded; |
|
1864 | } |
|
1865 | } |
|
1866 | ||
1867 | $fp = fopen($path, 'rb'); |
|
1868 | $file = fstat($fp); |
|
@@ 1938-1949 (lines=12) @@ | ||
1935 | } |
|
1936 | ||
1937 | $filenameEncoded = rawurlencode($file['name']); |
|
1938 | if (strpos($filenameEncoded, '%') === false) { // ASCII only |
|
1939 | $filename = 'filename="'.$file['name'].'"'; |
|
1940 | } else { |
|
1941 | $ua = $_SERVER['HTTP_USER_AGENT']; |
|
1942 | if (preg_match('/MSIE [4-8]/', $ua)) { // IE < 9 do not support RFC 6266 (RFC 2231/RFC 5987) |
|
1943 | $filename = 'filename="'.$filenameEncoded.'"'; |
|
1944 | } elseif (strpos($ua, 'Chrome') === false && strpos($ua, 'Safari') !== false && preg_match('#Version/[3-5]#', $ua)) { // Safari < 6 |
|
1945 | $filename = 'filename="'.str_replace('"', '', $file['name']).'"'; |
|
1946 | } else { // RFC 6266 (RFC 2231/RFC 5987) |
|
1947 | $filename = 'filename*=UTF-8\'\''.$filenameEncoded; |
|
1948 | } |
|
1949 | } |
|
1950 | ||
1951 | $result = [ |
|
1952 | 'volume' => $volume, |