jquery plugin tablepager

Display(展示):Project Homepage (English) | 插件首頁 (中文)

Download(下載):tablepager v1.0.0

Changelog(更新記錄):

2008-12-09 » tablepager v1.0.0 Released(發佈)

2008-12-02 » tablepager v0.0.1 beta(測試版)

debug_print_backtrace()

最近從Tsung的Blog看見這篇「PHP 追蹤此 函數 被哪些 function 呼叫來使用過」,果然很好用,之前寫物件的方法,通常都是呼叫來呼叫去,有時候出錯都不知道是哪裡發生錯誤,因為同一個類別可能被不同的地方被使用。有了這個debug_print_backtrace()就方便多了。可以算是一個不使用Xdebug的替代方案

話說...我好像仍然不習慣用try..catch..的方式寫程式,不過聽說要用這樣寫才是好習慣。@_@看來物件化的習慣仍然不夠

韓信點兵之中國餘數定理CRT(Chinese Remainder Theory)

最近太閒,所看了韓信點兵的故事,其中有提到算兵數的問題,就試著去研究一下後寫了一個函式

/*********************
 * 使用範例
 * Demo
 *********************/
//測試資料1(Test Data1)
$data1 = array(
    '2' => 1,//除2餘1,數學式:x ≡ 1 (mod 2)
    '3' => 2,//除3餘2,數學式:x ≡ 2 (mod 3)
    '5' => 4,//除5餘4,數學式:x ≡ 4 (mod 5)
    '7' => 0 //除7餘0,數學式:x ≡ 0 (mod 7)
);
//測試資料2(Test Data2)
$data2 = array(
    '3' => 2,//除3餘2,數學式:x ≡ 2 (mod 3)
    '5' => 3,//除5餘3,數學式:x ≡ 3 (mod 5)
    '7' => 2 //除7餘2,數學式:x ≡ 2 (mod 7)
);
echo CRT($data1);//output 203
echo CRT($data2);//output 23


續繼閱讀...

與中華民國(台灣)相似的其它國家國旗

從我的blog右下角的國家來源分析網站去看了一下,他有個國家清單,上面的國旗都是小圖示,乍看之下,有兩個國家的國旗還真像中華民國的國旗。

話說Taiwan的名氣還真的比R.O.C還有名…我喜歡Taiwan這詞。

PHP Extensions Download from PECL

在window環境下,有時候PHP函式需要安裝一些必要的dll,像是php_bcompiler.dll、php_bz2.dll等…
在PECL有個清單已經把常常會使用到的dll檔整理下載點了。真是方便,

dll下載清單:http://pecl4win.php.net/list.php

話說...我還是沒去摸liunx呀,滿殘念的@_@

使用bcompiler將PHP加密

公司最近說要將PHP原始碼加密@_@,我之前壓根都沒想到這事,所以今天花了一整天拜請google大仙,找到有一種使用bcompiler的方法,趴了官方文件後,索性就寫了一個加密的class,或許以會有機會用到。

//載入函式
include_once('phpCodeZip.php');
//建立加密物件
$encryption  = new PhoCodeZip('sourceDir','targetDir');
//執行加密
$encryption->zip();
//如此一來,你就可以在targetDir找到經過加密的PHP原始碼


續繼閱讀...

我們曾經都有夢,不是嗎?


Mr.ADULTS

這篇影片是從我朋友那邊看到的,相當不錯的短片,讓人感慨年輕時的夢想,卻隨著年長,一直被個擱置著,最後當回頭一望,才發現自己已經滿臉蒼老。

CI縮圖類別(Image Manipulation Class )的true color


一口一...我用了CI的Image類別,但是上傳後的圖片都失去原始的顏色了!後來記得之前有一本「專業PHP5程式設計指南」有提供縮圖章節,索性就重啃了一遍,其中有一段提到

imagecreatetruecolor函式是被用來產生出一個準備要放置縮圖的空白圖(以PHP變數的型態存在於記憶體當中),注意涵式名稱所暗示的,這個函數將會產生出一個「真實色彩」(true color) (24位元)的圖,而不會像imagecreate那樣,只能取得「以調色盤為基礎」(palette-based) (8位元)的圖。

接著續繼趴CI的User Guide(中)(英)提到Image類別支援使用GD, GD2, ImageMagick, NetPBM的圖型函式庫。我目前設定是GD,所以我猜想會不會GD是舊函式庫,所以沒有imagecreatetruecolor()?但是工作上的同事告訴我他在GD圖型庫的環境中,能正常使用imagecreatetruecolor()

一皿一||||見鬼了!!,害我又不得開啟system\libraries\Image_lib.php進行人工趴碼了@_@,後來發現在第504行類別判斷竟然是這樣的

續繼閱讀...

DataMapper Use Custom PK id to save()

剛又找到DM1.4.5一個不算是bug的錯誤,那就是save()函式無法儲存使用自訂的id,換句話說DM預定強制限定你的id(PK)欄位必需數字並且自動增值(auto_increment),所以沒辦法使用像是UUID來當做識別碼。

1
2
3
4
5
6
7
8
<?php
    //建立User物件(create user ORM)
    $u = new User();
    //使用自訂ID(use custom id)
    $u->id = uuid();
    //無法運作(It' can't working)
    $u->save();
?>

@_@真是的,所以我又開始趴原始碼了,找到判斷什麼時候做update什麼時候做insert動作的那部分。
如何做修改呢?(how to fix?)

續繼閱讀...

CodeIgniter ORM library

最近從小海那邊得知CodeIgniter有ORM的library,馬上就去下載試了一下。從文件來看DataMapper比起IgnitedRecord來得詳細多了,不過我覺得IR的名稱比較帥XD,但是我還是選用了DM了。

DM目前最新的版本是1.4.5,看著文件一步一步試著如何使用,可能之前碰過CakePHP,所以用起來相當的容易上手,一下子就差不多看完了,不過在Automated Timestamps那篇章節所說的效果我卡彈了!

Automated Timestamps的設定,可以讓每次資料有做異動時,自動更新的異動時間欄位,換句話說就是記錄最後修改時間,但是我試了好幾次都沒有成功,後來我自己試著去debug,發現原來在libraries/datamapper.php的428行遺漏了一個動作。


//原始碼片斷(source)
if ($field == $this->updated_field)
{
    // Update updated datetime
    $this->{$field} = $timestamp;
} 

//修正後的程式碼(fixed)
if ($field == $this->updated_field)
{
    // Update updated datetime
    $this->{$field} = $timestamp;
    // Register changed existing
    array_push($this->changed_existing,$field);
}

←較舊的