تحويل JSON إلى ملف .env

يناسب Docker وNode.js وASP.NET عند نقل إعدادات JSON إلى متغيرات بيئة. الفاصل __ هو ما يستخدمه ASP.NET Core للمستويات.

جارٍ تحميل الأداة…

المعالجة والخصوصية: تُحسب النتيجة داخل متصفحك ولا تُرسل بياناتك إلى أي خادم.

طريقة الاستخدام

  1. أدخل نص JSON، الفاصل بين المستويات وأسماء بحروف كبيرة UPPER_CASE.
  2. تظهر النتيجة فورًا وتتحدّث مع كل تعديل.
  3. انسخ النتيجة، أو انسخ رابطًا يحفظ القيم نفسها لمشاركتها.

طريقة الحساب

تدمج مسارات المفاتيح بالفاصل المختار، فيصبح database.host الاسم DATABASE__HOST وعناصر القوائم LIST__0. كل حرف غير الحروف اللاتينية والأرقام و_ يصبح _. القيمة البسيطة تكتب كما هي، والتي فيها مسافات أو رموز توضع بين علامتي تنصيص مفردة، والتي فيها سطر جديد بين مزدوجة مع \n.

مثال

المدخلات: الفاصل بين المستويات = شرطتان سفليتان __، أسماء بحروف كبيرة UPPER_CASE = نعم. النتيجة: .env: APP=toolsahla VERSION=2.1.0 PORT=8080 DEBUG=false LANGUAGES__0=ar LANGUAGES__1=en DATABASE__HOST=localhost DATABASE__USER=admin DATABASE__TIMEOUT=30 ، عدد المتغيرات: 9.

{
  "app": "toolsahla",
  "version": "2.1.0",
  "port": 8080,
  "debug": false,
  "languages": ["ar", "en"],
  "database": {
    "host": "localhost",
    "user": "admin",
    "timeout": 30
  }
}
APP=toolsahla
VERSION=2.1.0
PORT=8080
DEBUG=false
LANGUAGES__0=ar
LANGUAGES__1=en
DATABASE__HOST=localhost
DATABASE__USER=admin
DATABASE__TIMEOUT=30

الحدود والملاحظات

  • كل القيم تصبح نصوصا لأن متغيرات البيئة نصوص.
  • بعض الأدوات مثل Docker Compose تفسر $ داخل علامات التنصيص المزدوجة، فراجع القيم التي فيها $.

أسئلة شائعة عن هذه الأداة

متى أختار الفاصل __ بدل _؟

اختر __ إذا كانت المفاتيح نفسها تحتوي _، حتى يبقى الفرق بين المستوى واسم المفتاح واضحا، وهو المعتمد في ASP.NET Core.

لماذا ظهر خطأ «يصبحان الاسم نفسه»؟

مفتاحان مثل a-b وa_b يتحولان إلى A_B. غير اسم أحدهما في JSON.

كيف تكتب null؟

تكتب قيمة فارغة مثل KEY= لأن متغيرات البيئة لا تعرف null.