PHP Zmanim に関する前回の投稿で、次に書くのは天文学の計算だと言いました。今でもそれを書くつもりですが、最近注目する出来事があったので、代わりにそれについて話すことにします。天文学の話は今でもするつもりです。
いいえ、キトニョットの話ではありません。メズッザの吊り方の話でもありません。水ハラを使うべきか、卵ハラでもいいかの話でもありません。特定の単語の「T」の音について話しているのです。
考慮する:
ベレシス | ベレシット |
---|---|
キ・セイツァイ | キ・テイツァイ |
テヴェス | テベト |
他にもありますが、(ヘブライ語を読んだり話したりできる人、または正統派ユダヤ教コミュニティに長く所属している人なら)要点はおわかりでしょう。これら 2 つの伝統では、特定の音の発音方法が異なり、そのため英語の音訳も変わります。そして、どの伝統でもそうですが、どちらか一方に従う人は、「正しい」使用法にこだわることに熱心になることがあります。
PHP Zmanim は、それ自体では、アシュケナージ スタイルの音訳を使用して「コード化」されています。しかし、だからといって変更できないわけではありません。変更は比較的簡単に行うことができます。次のいくつかのセクションでは、日付、休日、トーラー部分のタイトルの既存の音訳を取得して、希望どおりに表示されるように変換する方法を説明します。
月の名前、トーラーの部分のタイトル、休日などについては、PHP Zmanim に値のマップがあります。まずは最も簡単な「月」から始めましょう。
これは単なる単純な値の配列です:
transliteratedMonths = ["Nissan", "Iyar", "Sivan", "Tammuz", "Av", "Elul", "Tishrei", "Cheshvan","Kislev", "Teves", "Shevat", "Adar", "Adar II", "Adar I"];
これを「修正」して必要な翻字を使用するには (この場合、変更する必要があるのはおそらく「Teves」だけです)、まず配列を再作成します。
$transliteratedMonths = ["Nissan", "Iyar", "Sivan", "Tammuz", "Av", "Elul", "Tishrei", "Cheshvan","Kislev", "Tevet", "Shevat", "Adar", "Adar II", "Adar I"];
休日の場合は、jewishCalendar オブジェクトを使用します (これについては、前回のブログ投稿で説明しました)。
まず、年、月、日の変数を設定し、ユダヤ暦オブジェクトを作成します。
$year = 2025; $month = 1; $day = 10; $jewishCalendar = Zmanim::jewishCalendar(Carbon::createFromDate($theyear, $themonth, $theday));
次に、PHP ZManim 形式を初期化し、新しく翻字された月を PHP Zmanim にプッシュします。
$format = Zmanim::format(); $format->setTransliteratedMonthList($transliteratedMonths);
最後に、その出力を変数にフォーマットします。
$zmandate = json_decode('"' . $format->format($jewishCalendar) . '"'); return $zmandate;
その結果は10 Tevet 5785
ご存知のとおり、2025 年には、テベトの月と 1 月の日付番号 (1、2、3 など) が一致します。
休日の音訳は、多少の違いはあるものの、同様に扱われます。
日付とカレンダー オブジェクトの同じ初期設定から始めます。
$year = 2025; $month = 1; $day = 10; $jewishCalendar = Zmanim::jewishCalendar(Carbon::createFromDate($theyear, $themonth, $theday));
次に、月ごとに行ったのと同じ方法で休日の翻字を設定します::
$transliteratedHolidays = ["Erev Pesach", "Pesach", "Chol Hamoed Pesach", "Pesach Sheni", "Erev Shavuot", "Shavuot", "Shiva Asar B'Tammuz", "Tisha B'Av", "Tu B'Av", "Erev Rosh Hashana", "Rosh Hashana", "Tzom Gedalyah", "Erev Yom Kippur", "Yom Kippur", "Erev Succot", "Succot", "Chol Hamoed Succot", "Hoshana Rabba", "Shemini Atzeret", "Simchat Torah", "Erev Chanukah", "Chanukah", "Tenth of Tevet", "Tu Bishvat", "Taanit Esther", "Purim", "Shushan Purim", "Purim Katan", "Rosh Chodesh", "Yom HaShoah", "Yom Hazikaron", "Yom Ha'atzmaut", "Yom Yerushalayim", "Lag B'Omer","Shushan Purim Katan", "Isru Chag"];
次に、PHP ZManim 形式を初期化し、新しく翻字された月を PHP Zmanim にプッシュします。
$format = Zmanim::format(); $format-$format->setTransliteratedHolidayList($transliteratedHolidays);
最後に、カレンダー情報を使用して(休日の場合は)出力を取得します。
$zmanholiday = $format->formatYomTov($jewishCalendar);
$zmanholiday
エコーすると次のようになります。
テベトの10日目
注: よく知らない人のために説明すると、「テベトの 10 日目」(または「アサラ ベト」) は断食日であり、独自の特別な儀式が行われます。
最後の例では、トーラーの部分名の音訳、つまりトーラーの最初の部分を「Bereshis」とするか「Beresheet」とするかを扱います。このために、PHP Zmanim はキーと値のペアの配列を使用します。必要なのは、値を変更してキーをそのままにしておくことだけです。
変更されていない場合は次のようになります。
$this->transliteratedParshaMap = [ Parsha::NONE => "", Parsha::BERESHIS => "Bereshis", Parsha::NOACH => "Noach", Parsha::LECH_LECHA => "Lech Lecha", Parsha::VAYERA => "Vayera", Parsha::CHAYEI_SARA => "Chayei Sara", Parsha::TOLDOS => "Toldos", (and so on. I'm not printing the full list here)
(そして、これが私の(セファルディム派)シナゴーグのために行っている編集です:
$transliteratedParshaMap = [ Parsha::NONE => "", Parsha::BERESHIS => "Beresheet", Parsha::NOACH => "Noach", Parsha::LECH_LECHA => "Lech Lecha", Parsha::VAYERA => "Vayera", Parsha::CHAYEI_SARA => "Chayei Sara", Parsha::TOLDOS => "Toldot", (etc)
コード内でこれを使用する場合は、日付と休日で確立したのと同じパターンに従います。
コーディングを始める前に、コードで「Parsha」クラスが使用されていることを確認することが重要です。
use PhpZmanim\HebrewCalendar\Parsha;
また、PHP Zmanim は、指定された日付が土曜日の場合にのみ Torah の部分を出力するので、正しい結果を得るには、任意の日付を取得して、次の (または前の) 土曜日を見つける必要がある場合があることも知っておくことが重要です。
これらの項目が処理されたら、他の例と同様にカレンダー オブジェクトを確立することから始めます。
$getyear = 2024; $getday = 26; $getmonth = 10; $jewishCalendar = Zmanim::jewishCalendar(Carbon::createFromDate($theyear, $themonth, $theday));
新しい文字変換変数を作成します(これは部分的にしかレンダリングされていないことに注意してください。完全なキーと値の配列は、 PHP Zmanim GitHub リポジトリの 169 行目(この記事の執筆時点)にあります)。
$transliteratedParshaMap = [ Parsha::NONE => "", Parsha::BERESHIS => "Beresheet", Parsha::NOACH => "Noach", Parsha::LECH_LECHA => "Lech Lecha", Parsha::VAYERA => "Vayera", Parsha::CHAYEI_SARA => "Chayei Sara", Parsha::TOLDOS => "Toldot", (etc)
次に、フォーマットを初期化し、新しい文字変換された配列をプッシュします。
$format = Zmanim::format(); $format->setTransliteratedParshiosList($transliteratedParshaMap);
最後に、カレンダー情報を使用して、希望どおりに翻字された正しいトーラーのポーションを取得します。
$output = json_decode('"' . $format->formatParsha($jewishCalendar) . '"');
出力をエコーすると次のようになります。
ベレシート
一部の人にとっては、これはいくつかのスペルの違いのために不必要な作業量に思えるかもしれません。さまざまなユダヤ文化が混ざり合うグループで多くの時間を過ごしたことのない人にとっては、人々がこれらのことに対してどれほど情熱を持っているかを知ることは衝撃的かもしれません。
さて、GIF の「正しい」発音方法をもう一度思い出してください。