পিএইচপি: উইন্ডোজের আওতায় আমলাটদের সাথে ফাইল অ্যাক্সেস

ওয়েব সার্ভারের ফাইলগুলো সবসময় স্পেস ছাড়া (যেমন "this is an image.jpg" নয়), উমলাউট বা বিশেষ অক্ষর ছাড়া (যেমন "football.jpg" নয়), ব্যাকস্ল্যাশ ছাড়া (যেমন "work\car.jpg" নয়), এবং ছোট হাতের অক্ষরে (যেমন "test.JPG" নয়) সংরক্ষণ করা উচিত। কিন্তু সম্প্রতি, একটি ক্লায়েন্ট প্রজেক্টের জন্য আমাকে যথেচ্ছ নামের বিপুল সংখ্যক পূর্বনির্ধারিত ফাইল অ্যাক্সেস এবং প্রসেস করতে হয়েছিল।


লিনাক্স সিস্টেমগুলি ডিফল্টভাবে আমলাত এবং বিশেষ অক্ষরযুক্ত ফাইলগুলিতে অ্যাক্সেসের অনুমতি দেয়, যাতে এখানে কোনও বিশেষ বৈশিষ্ট্য বিবেচনা করার প্রয়োজন নেই। এটি উইন্ডোজ সিস্টেমগুলিতে সম্পূর্ণ আলাদা দেখায়: এখানে আপনাকে কিছু কৌশল ব্যবহার করতে হবে এবং সিওএম ইন্টারফেসে আলতো চাপতে হবে। প্রথমত, আপনি php.ini এ প্রয়োজনীয় এক্সটেনশন অন্তর্ভুক্ত করেন

[COM_DOT_NET]
extension = php_com_dotnet.dll

এক. এখন অত্যন্ত সহায়ক সহায়ক শ্রেণি WinfsUtf8 ব্যবহৃত হয়, যা COM অবজেক্টগুলিতে অ্যাক্সেসকে সহজতর করে এবং ফাইলগুলিকে প্রভাবিত করে এমন প্রায় সমস্ত পিএইচপি ফাংশনগুলি ম্যাপ করে। এর সাথে ফাইলটি সংহত করার পরে

require_once('WinfsUtf8.php');

একটিতে ফাইল অ্যাক্সেসের সমস্ত সম্ভাবনা রয়েছে, উদাহরণস্বরূপ ফলাফল

file_exists('ä.jpg');

ভুলভাবে মিথ্যা, যদিও

Patchwork\PHP\Override\WinfsUtf8::file_exists('ä.jpg');

সত্য ফিরে।

পেছনে