Tijdreeksen: De rest van het verhaal

Het is al een tijdje geleden dat ik schreef over PHP Zmanim het werk dat ik ermee heb gedaan en de dingen die ik heb geleerd tijdens de implementatie ervan. Maar ondanks de vertraging, was het altijd mijn bedoeling om het gesprek voort te zetten. Dat is wat we vandaag gaan doen.

In mijn eerste bericht legde ik uit hoe je de PHP Zmanim-bibliotheek kunt installeren en aan de slag kunt gaan. Vervolgens dook ik in het volgende bericht in het berekenen van complexere tijden en de echte kracht van de tool waarbij de meest voorkomende rabbinale opinies worden toegepast voor verschillende zmanim. Ik pak de draad op waar ik was gebleven met minimaal overlap, dus als je even de tijd moet nemen om weer op snelheid te komen, heb ik gelinkt naar die eerdere berichten.

Het doel van vandaag is om toepassingen van PHP Zmanim te verkennen die verder gaan dan het relatief eenvoudige gebruik van de bibliotheek. Dat omvat:

  • Een standaardtijd nemen en aanpassen voor specifieke synagogegevallen (“Mincha begint elke dag 25 minuten voor Shkia”).
  • Het gebruik van PHP Zmanim-bibliotheekfuncties en -methoden die niet-tijdsberekeningen bieden zoals de wekelijkse Torah-afdeling, de Hebreeuwse datum, en of een opgegeven datum een feestdag is (zoals Rosh Chodesh of Sukkot).

Erkenningen

Nogmaals, ik moet beginnen met mijn dank uit te spreken aan de mensen die dit allemaal mogelijk hebben gemaakt. Voorop staat een lange lijst namen, waaronder Zachary Weixelbaum, de beheerder van de PHP Zmanim-bibliotheek zelf, en Eliyahu Hershfeld, de maker van de Kosher Java-bibliotheek waarop PHP Zmanim is gebaseerd.

Een Snelle Opfrisser

Toen we de vorige keer eindigden, hadden we een solide basis PHP-script dat:

  • Variabelen instelt voor de locatie (in breedte- en lengtegraad), samen met de tijdzone en hoogte.
  • De datum instelt
  • Een php zmanim-object maakt van die variabelen
  • De ingebouwde methoden gebruikt om de tijd te berekenen voor alles van zonsopgang tot mincha tot tzeit hakochavim

Het zag er zo uit:

PHP

 

Maar de zonsopgang is slechts het begin. Met behulp van een van de ingebouwde berekeningen (die beschreven worden op de GitHub ReadMe-pagina), kun je een breed scala aan tijden opvragen. Bijvoorbeeld, om Mincha Gedola te krijgen volgens een specifieke Rabbijnse opinie, zou ik het volgende kunnen opnemen:

PHP

 

In de laatste blog behandelde ik ook manieren om de format-methode van PHP Zmanim te gebruiken om de uitvoer leesbaarder te maken:

PHP

 

“Zout naar Smaak” Tijden Aanpassen

Voor degenen die niet veel tijd doorbrengen in de synagoge (geen blaam, geen schaamte, je bent nog steeds welkom hier) is het misschien niet voor de hand liggend, maar ondanks de naam van de zman bidden maar heel weinig organisaties Mincha (middaggebed) bij Mincha Ketana, Mincha Gedola of Plag haMincha.

In feite heeft veel van het werk met betrekking tot het berekenen van tijden minder te maken met de eenvoudige vraag “hoe laat is Mincha Gedola?” en meer met “hoe laat op de dag kunnen we redelijkerwijs Mincha plannen zodat iedereen tijd heeft om hier na het werk te komen; maar niet zo laat dat niemand komt omdat ze anders het avondeten missen?”

Als dat te theoretisch is, laat me dan het logische jengapuzzel mijn synagoge delen wanneer ze het wekelijkse schema opstellen:

  • Vrijdagavond kaarsen aansteken: Shkia (zonsondergang) minus 18 minuten
  • Zomerse vrijdag Mincha: Plag haMincha (met behulp van “plagHaminchaAteretTorah”) minus 20 minuten
  • Winterse vrijdag Mincha: Shkia (zonsondergang) minus 22 minuten
  • Shabbat Mincha: Shkia minus 40 minuten
  • Shabbat Ma’ariv: Shkia plus 50 minuten
  • Shabbat einde: Shkia plus 45 minuten
  • Weekdag Mincha: vind de vroegste shkia voor de week, en trek er dan 17 minuten van af

Terwijl alle andere tijden die ik in eerdere blogs heb besproken nog steeds van belang zijn, wordt hopelijk langzamerhand duidelijk dat ze minder vaak van belang zijn dan men zou verwachten.

Dus, hoe neem je een tijd (zoals shkia/zonsondergang) en voeg je vervolgens minuten toe of trek je ze af? We beginnen met hetzelfde script als voorheen:

PHP

 

Daaraan voegen we de code toe om zonsondergang te krijgen:

PHP

 

En vervolgens trekken we 18 minuten af om de tijd van kaarslicht te krijgen:

PHP

 

Zo is het. Je gebruikt gewoon de eigen string-naar-tijd functie van PHP. Het spijt me als ik je in spanning heb gehouden. Maar het is echt zo eenvoudig.

Wat is het Torah-gedeelte? Wat is de Hebreeuwse datum? Wanneer is Rosh Chodesh?

(…en andere essentiële maar lastige vragen die vaak worden gesteld in en rondom je synagoge.)

Samen met datum berekeningen heeft de KosherJava-bibliotheek (en dus de PHP Zmanim-bibliotheek) methoden en functies om snel informatie te verstrekken zoals hierboven gevraagd.

Het eerste wat je moet begrijpen is dat het PHP Zmanim-object waarmee we tot nu toe hebben gewerkt een Zmanim-object is een object dat een set specifieke tijden heeft voor een bepaalde datum. Voor zaken die de datums zelf betreffen, instantiëren we een jewishCalendar-object. Het goede nieuws is dat het veel makkelijker is om te maken. Alles wat je nodig hebt is het jaar, de maand en de dag.

PHP

 

We hebben nu een jewishCalendar-object om mee te werken en kunnen methoden gebruiken die vergelijkbaar zijn met degene die we vonden voor tijden. Bijvoorbeeld, veronderstellend dat de geselecteerde datum een zaterdag was, kunnen we het Torah-gedeelte krijgen:

PHP

 

(Negeer de $format-instelling voor nu. We zullen er zo meteen dieper op ingaan).

Als je die code zou uitvoeren, zou $parshaeng je geven:

PHP

 

Je zult merken dat we geen breedtegraad, lengtegraad, tijdzone, enz. hoefden te verstrekken. Ik kan niet genoeg benadrukken dat deze mogelijkheid alleen al – het kunnen verkrijgen van data, Torah gedeelten en meer – de PHP Zmanim-bibliotheek op zichzelf al nuttig maakt, zelfs zonder de tijdscalculaties.

Kan ik dat in het Hebreeuws krijgen?

Het Torah-gedeelte? Natuurlijk! Hier komt de regel $format om de hoek kijken.

Allereerst een uitleg van wat het is: Het is een methode die objecten zoals Zmanim en jewishCalendar aanpast, instellende weergave- en uitvoeropties. Het instellen van Zmanim::format() zonder verdere informatie resulteert standaard in het Engels. Maar dan kun je het systeem vertellen dat je Hebreeuws wilt met deze extra regel:

PHP

 

Als je nu dezelfde regel json_decode('" . $format->formatParsha($jewishCalendar) . '"') uitvoert, krijg je:

Plain Text

 

Alles samenvoegen:

PHP

 

Dit zou weergeven: כי תבוא – Ki Savo.

Welke dag is het?

Meer specifiek, welke HEBREEUWSE dag is het?

Net als het vorige voorbeeld beginnen we met een jewishCalendar en een formaatobject.

PHP

 

Vervolgens voegen we dezelfde regel toe om het formaat in te stellen op Hebreeuws.

PHP

 

En tot slot (en vrij eenvoudig), vragen we om een rechtstreekse kalenderobjectuitvoer:

PHP

 

Dat is letterlijk alles wat je nodig hebt. Het resultaat is zoiets als dit:

Plain Text

 

Ja, ook al hebben we setHebrewFormat gespecificeerd, het kwam erin het Engels uit.

Kan ik dat in feitelijk Hebreeuws krijgen?

Om de Hebreeuwse datum volledig in het Hebreeuws weer te geven, zowel woorden als letters roepen we een enigszins andere methode aan die, heel toepasselijk, HebrewDateFormatter wordt genoemd.

Ervan uitgaande (nogmaals) dat je je initiële variabelen hebt ingesteld en een jewishCalendar object hebt aangemaakt, zou de code om een Hebreeuwse datum weer te geven zijn:

PHP

 

Dit zou je geven:

Plain Text

 

Is Vandaag de Dag?

Soms moet je controleren of een specifieke datum… nou, een specifieke dag is zoals Rosh Chodesh (de nieuwe maand) of deel uitmaakt van een meerdaagse feestdag (zoals Soekot).

Het blijkt dat de PHP Zmanim methode dit heel eenvoudig maakt. Ervan uitgaande dat je op dezelfde manier bent begonnen als bij de andere voorbeelden, zodra je het jewishCalendar object hebt ingesteld, is het zo simpel als:

PHP

 

Als de datum overeenkomt met de feestdag, zal het “waar” retourneren, en kun je doorgaan met welke logica of proces je maar wilt, zoals het weergeven van de datum (of niet).

Dus Wat Is Het Vervolg?

Geloof het of niet, er valt nog meer te behandelen. In de komende weken Wanneer ik eraan toekom, zou ik graag manieren willen behandelen om de ingebouwde astronomiefuncties te benutten voor tijdsberekeningen. Geloof het of niet, het kan echt van belang zijn voor het hebben van echt nauwkeurige tijden voor zaken als het begin en einde van de Sjabbat en de feestdagen, samen met andere observaties.

Ondertussen, als er iets anders is dat je graag behandeld wilt zien of als je vragen, correcties of complimenten hebt, voel je vrij om ze hieronder in de reacties achter te laten.

Source:
https://dzone.com/articles/time-data-series-the-rest-of-the-story