يجب أن تكون الملفات الموجودة على خوادم الويب دائمًا بدون مسافات (وليس "هذه صورة. jpg") ، بدون علامات تشكيل أو أحرف خاصة (وليس "football.jpg") ، وبدون خطوط مائلة للخلف (وليس "Arbeit \ Auto.jpg") وبأحرف صغيرة (وليس "" test.JPG "). ومع ذلك ، اضطررت مؤخرًا إلى الوصول إلى عدد كبير من الملفات ومعالجتها بأي اسم ملف لمشروع العميل.
تسمح أنظمة Linux بالوصول إلى الملفات ذات علامات تغيير الصوت والأحرف الخاصة افتراضيًا ، بحيث لا توجد ميزات خاصة يجب أخذها في الاعتبار هنا. يبدو مختلفًا تمامًا على أنظمة Windows: هنا عليك استخدام بعض الحيل والنقر على واجهة COM. بادئ ذي بدء ، عليك تضمين الامتداد المطلوب في ملف php.ini
[COM_DOT_NET] extension = php_com_dotnet.dll
واحد. الآن يتم استخدام فئة المساعد المفيدة للغاية WinfsUtf8 ، والتي تبسط بشكل كبير الوصول إلى كائنات COM وتعيين تقريبًا جميع وظائف PHP التي تؤثر على الملفات. بعد دمج الملف مع
require_once('WinfsUtf8.php');
يمتلك المرء كل إمكانيات الوصول إلى الملفات ، على سبيل المثال النتائج
file_exists('ä.jpg');
خطأ بشكل غير صحيح ، بينما
Patchwork\PHP\Override\WinfsUtf8::file_exists('ä.jpg');
يعود صحيحا.