سلسلة بيانات الوقت: ليس ما قلته؛ بل كيف قلته

في آخر مقالة لي عن PHP Zmanim، قلت أن الشيء التالي الذي سأكتب عنه هو حسابات الفلك. ما زلت أخطط لفعل ذلك، ولكن ظهر شيء ما مؤخرًا لفت انتباهي، لذا سأتحدث عن ذلك بدلاً من ذلك. ما زلت أخطط للتناول للأمور الفلكية.

سفاردي مقابل أشكنازي

لا، ليس الكتنيوت. لا، ليس كيفية تعليق المزوزاه. لا، ليس ما إذا كان يجب عليك استخدام خبز الحنطة مع الماء أما إذا كان خبز البيض مقبولًا. أتحدث عن الصوت “ت” في بعض الكلمات.

فكر في:

بيرشيث بيرشيت
كي سيتزي كي تيتزي
تيفيس تيفت

هناك المزيد، ولكن (إذا كنت تقرأ/تتحدث العبرية أو كنت جزءًا من المجتمعات اليهودية الأرثودكسية لفترة طويلة) فإنك تفهم النقطة. هذه التقاليد الاثنان لهما طرق مختلفة لنطق بعض الأصوات، وبالتالي، تتغير الtransliteration الإنجليزية. وكأي تقاليد، يمكن أن يكون الأشخاص الذين يلتزمون بأحدهما متحمسين للإصرار على الاستخدام “الصحيح”.

يتم “ترميز” PHP Zmanim بنفسه باستخدام transliterations بنمط أشكنازي. ولكن هذا لا يعني أنه يمكنك تغيير ذلك والقيام بذلك بسهولة تامة. في الأقسام القادمة، سأريك كيفية أخذ transliterations الموجودة مسبقًا للتواريخ، والأعياد، وعناوين أجزاء التوراة وتحويلها بحيث تظهر بالطريقة التي تريدها أنت.

الخطوة 1: إنشاء الخريطة

بالنسبة لأسماء الشهور وعناوين أجزاء التوراة والأعياد وغيرها، يحتوي PHP Zmanim على خريطة للقيم. لنبدأ بالأسهل – الشهور.

هذا مجرد مصفوفة بسيطة من القيم:

Plain Text

 

لكي “تعدل” هذا وتستخدم الترجمة التي تريدها (في هذه الحالة، ربما “تيفيس” فقط يجب تغييره)، يجب أولاً إعادة إنشاء المصفوفة:

Plain Text

 

الخطوة 2: إعداد التقويم الخاص بك

بالنسبة للأعياد، ستستخدم كائن jewishCalendar (الذي تناولناه في المدونة السابقة).

أولاً، نضبط متغيرات السنة والشهر واليوم وننشئ كائن تقويم يهودي:

PHP

 

ضع كل شيء معًا

بعد ذلك، نهيئ تنسيق PHP Zmanim ومن ثم نضيف الشهور المترجمة الجديدة إلى PHP Zmanim:

PHP

 

وأخيرًا، نأخذ تلك الناتجة من التنسيق ونضعها في متغير:

PHP

 

سيكون النتيجة:

Plain Text

 

ونعم، إذا كنت تتساءل، في عام 2025، تتطابق أرقام الأيام (1، 2، 3، إلخ) لشهر تيفيت وشهر يناير.

عيد سعيد!

تتعامل ترجمات الأعياد بنفس الطريقة، حتى إذا كانت هناك بعض الاختلافات الطفيفة.

نبدأ بإعداد نفسه للتاريخ وكائن التقويم:

PHP

 

بعد ذلك، سنضع ترجمات الأعياد بنفس الطريقة التي فعلنا بها للشهور:

PHP

 

بعد ذلك، نهيئ تنسيق PHP Zmanim ومن ثم نضيف الشهور المترجمة الجديدة إلى PHP Zmanim:

PHP

 

أخيرًا، نستخدم معلومات التقويم و (إذا كانت عطلة) نحصل على الناتج:

PHP

 

سيكون رد $zmanholiday كما يلي:

Plain Text

 

ملاحظة: بالنسبة لأولئك الذين ليسوا على دراية، “العاشر من تَبِيت” (أو “عاصرة بتبيت”) هو يوم صوم، وله مجموعة خاصة من الطقوس.

ما في اسم؟

آخر مثال لدينا يتعامل مع نقل أسماء أجزاء التوراة – سواء قدمت الجزء الأول في التوراة بـ “بِرَشيث” أو “بيرشيت”. لهذا، يستخدم PHP Zmanim مصفوفة من الأزواج المفتاحية-القيمية، حيث كل ما عليك فعله هو تغيير القيمة، وترك المفتاح كما هو. إليك كيف يبدو دون تغيير:

PHP

 

وها هي التحريرات التي أقوم بها لكنيستي (السفاردي):

PHP

 

استخدام هذا داخل كودك يتبع نفس النمط الذي أنشأناه مع التواريخ والعطلات.

قبل أن نبدأ البرمجة، من المهم ملاحظة أن عليك التأكد من استخدام فئة “Parsha” في كودك:

Plain Text

 

كما أنه من المهم بالنسبة لك أن تعرف أن PHP Zmanim سيقوم بإخراج جزء من التوراة فقط إذا كان التاريخ المعطى هو يوم سبت، لذا قد تحتاج إلى أن تأخذ أي تاريخ معطى وتجد يوم السبت القادم (أو السابق) لتحصل على النتيجة الصحيحة.

بمجرد التعامل مع تلك العناصر، تبدأ بإنشاء كائن التقويم كما فعلنا في أمثلتنا الأخرى:

PHP

 

أنشئ متغير التحويل الجديد (يرجى ملاحظة أن هذا تم تقديمه جزئيًا فقط. يمكنك العثور على مجموعة مفاتيح القيم الكاملة على (حتى وقت كتابة هذا النص) السطر 169 على مستودع PHP Zmanim GitHub)

Plain Text

 

بعد ذلك، نقوم بتهيئة التنسيق ومن ثم نضغط على مصفوفة التحويل الجديدة:

PHP

 

وأخيرًا، نستخدم معلومات التقويم لالتقاط الجزء الصحيح من التوراة محولًا بالطريقة التي نريدها:

PHP

 

سيعطينا إخراج الـ Echo:

Plain Text

 

هل هناك شيء آخر يمكن قوله؟

قد يبدو هذا كله غير ضروري بالنسبة لبعض الأشخاص لأنها تتطلب قدرًا زائدًا من العمل من أجل اختلافات بسيطة في التهجئة. بالنسبة للأشخاص الذين لم يقضوا الكثير من الوقت في مجموعات حيث تتداخل الثقافات اليهودية المختلفة، قد يكون من المفاجئ اكتشاف مدى شغف الناس بهذه الأمور.

الآن، أذكرني مرة أخرى بالطريقة “الصحيحة” لنطق GIF.

Source:
https://dzone.com/articles/time-data-series-how-you-said-it