INI পার্সার
INI কনফিগারেশন ফাইল তাৎক্ষণিকভাবে পার্স করে JSON-এ রূপান্তর করুন। সেকশন, কমেন্ট ও কোটেড ভ্যালু সমর্থিত। সব প্রক্রিয়াকরণ আপনার ব্রাউজারেই হয়।
পার্স করা JSON এখানে দেখা যাবে...
INI পার্সার ব্যবহারের পদ্ধতি
INI পেস্ট করুন
ইনপুট এরিয়ায় আপনার INI কনফিগারেশন কনটেন্ট লিখুন বা পেস্ট করুন।
পার্স করুন
আপনার INI-কে JSON-এ রূপান্তর করতে Parse বাটনে ক্লিক করুন।
JSON কপি করুন
তৈরি JSON আউটপুট পর্যালোচনা করে ক্লিপবোর্ডে কপি করুন।
INI ফাইল কী?
INI ফাইল হলো একটি সাধারণ টেক্সট-ভিত্তিক কনফিগারেশন ফাইল ফরম্যাট, যা সাধারণত Windows এবং অনেক অ্যাপ্লিকেশনে ব্যবহৃত হয়। এতে সেকশন, কী ও ভ্যালুর একটি সরল কাঠামো থাকে যা মানুষ ও মেশিন উভয়ের পক্ষেই পড়তে সহজ।
INI কাঠামো
সেকশন
সম্পর্কিত সেটিংস গ্রুপ করতে [section_name] হেডার দিয়ে চিহ্নিত
কী-ভ্যালু জোড়া
সেকশনের ভেতরে বা গ্লোবালি সরল key = value অ্যাসাইনমেন্ট
কমেন্ট
; বা # দিয়ে শুরু হওয়া লাইন কমেন্ট হিসেবে গণ্য হয়
সাধারণ জিজ্ঞাসা
এই পার্সার সেকশন, key=value জোড়া, কমেন্ট (; বা # দিয়ে), কোটেড স্ট্রিং ভ্যালু ও মাল্টিলাইন ভ্যালু সমর্থন করে। এটি বুলিয়ান ও সংখ্যাসূচক টাইপ ডিটেকশনও হ্যান্ডেল করে।
এই পার্সার স্ট্যান্ডার্ড INI ফরম্যাট হ্যান্ডেল করে। কনস্ট্যান্ট সাবস্টিটিউশন ও বিশেষ অপারেটরের মতো কিছু PHP-নির্দিষ্ট এক্সটেনশন সমর্থিত নাও হতে পারে।
একই সেকশনে ডুপ্লিকেট কী পাওয়া গেলে শেষ ভ্যালুই প্রাধান্য পায়। এটি স্ট্যান্ডার্ড INI পার্সিং আচরণ অনুসরণ করে।
ক্লাসিক ঠিকানা: php.ini (PHP ইঞ্জিনের সম্পূর্ণ কনফিগারেশন), .gitconfig, Windows-এর win.ini ঐতিহ্য, Linux-এর .desktop এন্ট্রি, আর অনেক গেম ও ডেস্কটপ অ্যাপ। ফরম্যাটের শিকড় ১৯৬০-৭০-এর দশকে, তাই সিনট্যাক্স সব জায়গায় সামান্য আলাদা - সেকশন, key=value ও সেমিকোলন কমেন্টই স্থিতিশীল কোর।
না - সবকিছুই স্ট্রিং; টাইপ হলো কনজিউমার-পক্ষের রীতি। PHP-র parse_ini_file() সত্য/চালু/হ্যাঁ/১ এবং মিথ্যা/বন্ধ/না/০-কে বুলিয়ানে কাস্ট করে (ডকুমেন্টেড আচরণ), সংখ্যার-মতো ভ্যালুকে পূর্ণসংখ্যা ও ফ্লোটে রূপান্তর করে, আর বাকিগুলো স্ট্রিং হিসেবে রাখে। ভ্যালু কোট করলে ('1') PHP-তে স্ট্রিং থাকে। এই পার্সার যেমন লেখা আছে কাঁচা ভ্যালু দেখায়।
[section] একটি সেকশন শুরু করে যা পরের হেডার পর্যন্ত সব নিচের কীকে স্কোপ করে - php.ini-র [PHP] ও [mail function] ব্লক এভাবেই কাজ করে। ডটেড কী (database.host = localhost) বা [database.pool]-এর মতো সেকশন নাম দিয়ে নেস্টিং নকল করা হয়, কারণ ফরম্যাটের নিজের একটিই লেভেল আছে। গভীর নেস্টেড ডেটা মানে আপনি INI ছাড়িয়ে বেড়ে গেছেন আর TOML বা YAML দরকার।
বেসলাইন ফরম্যাট প্রায় কোনো এস্কেপই সংজ্ঞায়িত করে না - ভ্যালু লাইন-শেষ পর্যন্ত আক্ষরিকভাবে নেওয়া হয়। ব্যবহারে: ডাবল কোট স্পেসযুক্ত ভ্যালু গ্রুপ করে এবং শুরু বা শেষের হোয়াইটস্পেস রাখার একমাত্র পোর্টেবল উপায়; ${VAR} ইন্টারপোলেশন কিছু ইমপ্লিমেন্টেশনে আছে (systemd যেমন) কিন্তু সবগুলোতে নয়; আর ; ও # লাইনের মাঝে কমেন্ট শুরু করে কি না তা কনজিউমিং পার্সারের উপর নির্ভর করে।
.env হলো INI-র ফ্ল্যাট উপসেট: KEY=value লাইন, কোনো সেকশন নেই, 12-Factor App কনফিগারেশন পদ্ধতি অনুসরণকারি ডজনখানেক ভাষার dotenv লাইব্রেরি দ্বারা কনজিউম হয়। INI ফাইল সেকশনের উপর নির্ভর করে এবং জেনেরিক রীতির বদলে নির্দিষ্ট অ্যাপ্লিকেশন পড়ে। .env-এর ভ্যালু প্রায় সবসময় এনভায়রনমেন্ট ভেরিয়েবলে ইনজেক্ট হওয়া স্ট্রিং, অন্যদিকে INI কনজিউমাররা প্রায়ই নিজস্ব টাইপিং নিয়ম প্রয়োগ করে।
সম্পর্কিত সরঞ্জাম
প্রামাণ্য রেফারেন্স
এই সরঞ্জামের পেছনের মূল উৎস — দ্বিতীয় হাতের সারাংশ নয়, বরং অফিসিয়াল স্ট্যান্ডার্ড ও স্পেসিফিকেশন।