2016年6月6日 星期一

Postgresql 很棒的 NOTIFY 功能

Postgresql 有個在做即時互動很好用的功能叫Notify.

根據Documentation表示, Notify 可以在table 有insert/update/delete 的時候推出一個通知.
那麼來做個小測試吧~
首先, 我們用 pgadmin 的 query 視窗先建立一個測試用的table
CREATE TABLE test_table
(
  id serial NOT NULL,
  test_col_1 character varying
)
然後, 建立一個 trigger 觸發後要執行的 function


最後, 建立一個 trigger 來觸發事件



DB 的部分處理好了之後, 我們來寫一段小程式試試看


然後就在該目錄下cmd 執行 php notify.php, 在還沒有新增任何資料的時候只會看到


然後我們來新增一筆資料吧!

insert into test_table (test_col_1) values ('row1')

這時, 如果有成功的話應該會看到通知被推送出來



Notify 不止可以推送通知, 還可以在通知裡把有變動的資料以JSON格式一起推送. 只不過, 沒記錯的話POSTGRESQL, 要9.1版之後才有內建的JSON函式可以用

2016年6月5日 星期日

在XAMPP(WINDOWS)下安裝pthread

安裝前請先用phpinfo檢查3件事:

  1. 自己的PHP 版本
  2. Complier 的版本
  3. 64 or 32 bits
  4. Thread Safety 是 enabled
如下圖
然後到這裡找相對應的檔案下載回來. 


找到相對應的版本下載回來後, 把檔案解壓縮.
把裡面2個檔案
  1. php_pthreads.dll
  2. pthreadVC2.dll
找出來, 然後把 php_pthreads.dll copy 到 
  1. /xampp/php/ext 資料夾底下
再來把 pthreadVC2.dll copy 到
  1. /xampp/php
  2. /xampp/apache/bin
  3. windows/system32
這3個資料夾下 再重啟xampp就可以了