PHPを使った算命学 宿命・命式算出ツール

2020年5月29日

算命学 宿命算出ツールを作ろうと思ったきっかけ

プログラミンをする女性

前々から算命学の宿命・命式を算出するプログラムを作りたいなーと思ってました。普段宿命を算出するときは必ず手で出していますが,一方で,瞬時に宿命を算出するプログラムがあれば便利だなーとも思っていました。

算命学の宿命・命式の算出は,ロジックに従って結果を導き出すため,プログラム的な記述は可能だと思っていました。むしろプログラムの得意とするところですね。

様々なサイトやブログで宿命を算出するツールを無料で公開しているところがありますよね。専用のソフトウェアやスマホのアプリも今では数多く出回っています。「こんなのがあったらいいなー」と私も思っていました。

ということで,色々準備をしつつ案を練り上げ,PHPを使って宿命算出プログラムを作ってみました。Pythonとも迷いましたが,結局はPHPを用いました。

この記事は備忘録のための記事です。

製作にあたって準備したもの

Microsoft Excelによる干支データベースの例
Microsoft Excelによる干支データベースの例

プログラムで宿命を算出するには,大元となるデータベースが必要です。

データベースは,Microsoft Excelで作成しました。データベースはテキスト形式ですので,変更対応も容易です。データベースは一旦作り上げてしまえば完成です。変更が必要なのは暦を追加するときくらいですね。今回作成したデータベースは2029年まで対応していますが,それ以降の暦分はデータベースに追加をすればいいだけです。

私の作成したデータベースは,以下のようなシートがあります。

  • 六十花甲子表
  • 十干十二支表
  • 天中殺表
  • 十大主星表
  • 十二大従星表
  • 二十八元表

Excelの読み書きはPhpSpreadsheetで

宿命算出の元となるデータベースExcelで作成しました。大元となるデータベースはエクセルで準備しておいて,それをPHPの「PhpSpreadsheet」ライブラリを使って読み書きする仕様です。一昔前では,PHPでExcelを扱うにはPHPExcelが主流でしたが,既に開発終了となっておりその後継となって現れたのがPhpSpreadsheetです。

phpspreadsheetの説明
phpspreadsheetで対応しているファイル形式

上図の通り,phpspreadsheetではExcelをはじめとし,オープンドキュメントフォーマットやCSV, PDFにも対応しています。

宿命・命式算出までのフローチャート

宿命・命式算出までのフローチャート
(参考)宿命・命式算出までのフローチャート

私は一気にやると混乱する性格なので,まずは上図のようなフローチャートを作って宿命を算出するまでの手順を整理しました。普段,人が手で算出している手順を一つひとつフローチャートに記していきました。こうすることで流れが見えて,各ステップでやること・手順一つひとつが明確になりますね。

大きな流れとしては,陰占 → 陽占 → 大運 の順序で算出していきます。

ユーザーからのインプット情報は,生年月日と性別のみ。生年は西暦形式としました。生年月日はプルダウンで入力,性別はラジオボタンで入力する形に。

生年に対しては,$birth_yという変数を与え,生月には同様に$birth_m,生日には$birth_d という風に定義しています。

暦というのは,例えば31日の月であれば,31日を過ぎたら次の月の1日に入ります。31が32ではなく,1になるのです。このあたりは,日付を単なる数字ではなく暦として認識させなければいけないため,処理が若干難しかったように思います。つまり,31日の次は32日ではないということ。閏年の処理も必要になり,2月も29日がある年とない年があります。

性別の処理は,男性を1,女性を2とすれば,簡単に処理できます。

今後について

現在のバージョンでは,陰占・陽占・大運の算出に留めていますが,今後はより詳しく,位相法の出力・数理法の出力・守護神の出力・格法/局法の判定と出力など,その他の機能を拡張させられたら良いな~と思っています。調候の守護神は機械的に算出可能かもしれませんが,調和の守護神はプログラム的には難しいかもしれません。

スマホ用のアプリも作れたら良いなと考えています。スマホは今やアンドロイドとiPhoneの二強ですが,どちらもアプリストアがあり,今ではいろんなアプリがあります。これからの時代スマホはますます便利になっていくと考えられるため,アプリの需要もどんどん増して行くと考えています。

今回作成した宿命算出ツールはこちらからアクセスできます。

今回作成したツールは以下で販売しています。WordPressでブログを立ち上げている方は設置可能です(WordPressはPHPで動いていますので)。興味ある方はぜひ覗いてみてください。

占いばばあの算命学メルマガ購読募集中!

ブログとはちょっと違った算命学情報を不定期に!?無料でお届けします。 現在184名の方が購読中です!!
「算命学で見る身体の相性編」を無料プレゼント中(^^)

あなたの星を稼働させるためには,まず宿命を知ることが第一歩です。あなたの星を算出してみましょう!