حول هذه الأداة
محوّل .env ⇄ JSON أداة مجانية تعمل داخل المتصفح تحوّل ملفات متغيرات البيئة إلى JSON والعكس. الصق ملف .env لتحصل على كائن JSON مرتّب، أو الصق كائن JSON لتحصل على أسطر KEY=value جاهزة لملف .env. يُحلَّل كل شيء محليًا في متصفحك — لا يُرفع أي شيء، وتستخدم الأداة JSON.parse فقط، لا eval أبدًا.
في الاتجاه .env → JSON، تقرأ الملف سطرًا سطرًا: تُتجاهل الأسطر الفارغة وتعليقات #، ويُحذف "export " في البداية، ويُقسَّم كل سطر عند أول = إلى مفتاح وقيمة، وتُقتطع طبقة واحدة من علامات الاقتباس المفردة أو المزدوجة المحيطة بالقيمة، وتُسلسَل النتيجة بـ JSON.stringify(obj, null, 2). وفي الاتجاه JSON → .env، تحلّل الكائن وتُصدر سطر KEY=value واحدًا لكل خاصية؛ والقيم التي تحتوي مسافات أو أحرفًا خاصة (أو القيم الفارغة) تُغلَّف بعلامات اقتباس مزدوجة مع تهريب الشرطات المائلة العكسية وعلامات الاقتباس وأحرف التحكم.
استخدمها لترحيل التهيئة بين الصيغتين، أو لفحص .env فوضوي كـ JSON منظّم، أو لتوليد .env من كائن إعدادات. يُعرض عدد المفاتيح لتتأكّد أن شيئًا لم يُسقَط، ويُبلَّغ عن JSON غير الصالح بدلًا من إتلافه بصمت.
الأسئلة الشائعة
كيف تُعالَج التعليقات وعلامات الاقتباس في الانتقال من .env إلى JSON؟
تُتجاهل الأسطر الفارغة والأسطر التي تبدأ بـ #، ويُزال "export " في البداية. يُقسَّم كل سطر متبقٍ عند أول علامة =، وإن كانت القيمة مغلَّفة بعلامات اقتباس مفردة أو مزدوجة متطابقة، تُقتطع طبقة خارجية واحدة منها.
متى تُقتبس القيم في الانتقال من JSON إلى .env؟
تُكتب القيم البسيطة عارية كـ KEY=value. أما القيم التي تحتوي مسافات أو # أو = أو علامات اقتباس أو أحرفًا خاصة أخرى — أو التي تكون فارغة — فتُغلَّف بعلامات اقتباس مزدوجة، مع تهريب الشرطات المائلة العكسية وعلامات الاقتباس المزدوجة والأسطر الجديدة والجدولة لتنتقل ذهابًا وإيابًا بنظافة.
هل تستخدم eval لتحليل JSON؟
لا. يستخدم التحليل JSON.parse المدمجة فقط، ويستخدم الإخراج JSON.stringify. لا يوجد eval أو Function في أي مكان، فالأداة آمنة تحت سياسة أمان المحتوى الصارمة ولا يمكنها تنفيذ المدخلات الملصوقة.
ماذا يحدث مع JSON غير الصالح وما وضع خصوصية بياناتي؟
يُظهر JSON غير الصالح في وضع JSON → .env خطأً بدلًا من إنتاج مخرجات معطوبة. يحدث كل التحويل في متصفحك، فمفاتيحك ورموزك وأسرارك لا تُرفع أو تُخزَّن في أي مكان أبدًا.
المزيد من الأدوات