Gettext mo 轉回 po 和 PHP 讀取 mo 檔

Gettext 詳可見: 使用 gettext 來實做 PHP 多國語系支援(I18N)

  • po 檔: 原始文件, 也就是平常翻譯時修改的文件檔案
  • mo 檔: 程式在看的文件(binary).

但是如果 po 檔不見, 要從 mo 檔轉換回來要怎麼辦?

閱讀全文〈Gettext mo 轉回 po 和 PHP 讀取 mo 檔〉

PHP 查詢並算出世界各地時間

線上的服務有世界各地的人來使用(若是有提供英文語系的話), 就有可能遇到需要幫世界各地的時區算時間.

要做個時區分佈設定(ex: 台灣是 +8), 想要選取後, 自動秀出他的時間, 照理說就是現在時間 -8hr 即可(設定於台灣機器而言), 但是又想到機器可能會換, 程式還是該寫好點才行, 於是花了點時間做研究.

閱讀全文〈PHP 查詢並算出世界各地時間〉

Debian Linux Package 快速製作筆記(deb)

快速製作 Debian Package, 單純 Hello world 版, 若要詳細版本可見:

Debain Package 相關資料

閱讀全文〈Debian Linux Package 快速製作筆記(deb)〉

於 Linux、FreeBSD 使用 lockf 避免程式未結束,又被再次執行

程式設到 crontab 去執行是很常做的事情, 通常也會避免同時執行過多的 Script, 不過, 通常最怕的是程式要執行很久, 結果遇到程式還沒執行結束, 同樣的程式又被執行了一隻的狀況.

通常有幾種做法:

  1. 把時間拉長避開
  2. 程式寫 file.lock / ps 等, 去判斷是否執行結束
  3. 使用 lockf 來判斷

註: 關於 lockf 安裝可見 - 於 Debian Linux 安裝 lockf 或 參考 flock 用法

閱讀全文〈於 Linux、FreeBSD 使用 lockf 避免程式未結束,又被再次執行〉

於 Debian Linux 安裝 lockf

以前都不知道有 lockf (execute a command while holding a file lock) 這麼方便的程式, 直到 Leeym 長輩 提醒才知道~

不過這個只有 FreeBSD 有, 在 Debian Linux 裡面翻不到, 最後打算找 Source code 來試著改寫看看, 就找到有人改寫好的程式囉~ 😀

  • 註1: 在此先不詳細介紹 lockf 使用時機, 另外, 有空再來包 Debian package, 目前只有 tarball 可以安裝使用~:)
  • 註2: 其它版本 Linux 應該也都可以正常編譯, 只是我沒測試過.

閱讀全文〈於 Debian Linux 安裝 lockf〉