目前分類:PHP筆記 (48)

瀏覽方式: 標題列表 簡短摘要

繼前篇「WAMP 架設網頁伺服器」後,這篇文章要來寫如何在WAMP安裝SSL的服務。程式開發人員會遇到一些像是金流部分的部分,這時候就不得不考慮SSL模式的測試。具體的作法就是在自己的主機建立CA認證伺服,由自己主機來當憑證中心。烘培參考下列幾篇文章

從別人的文章來看,清楚的表示建立SSL的過程,可以分為「製作SSL憑證與公開金鑰」與「編輯 Apache SSL 設定檔」兩部分

低溫烘培 發表在 痞客邦 留言(7) 人氣()

glob()是PHP中一個超好用卻意外冷門的函式,趁著有這個機會,我把glob大概說明一下,並整理一些常用的使用方法。
/**
 * 在使用之前,我們先大致了解一下glob有什麼特別的參數可以使用。
 *
 * GLOB_MARK     - 若檔案為資料夾,在回傳檔案路徑的最後面加上斜線"\"
 * GLOB_NOSORT   - 保持檔案路徑在原資料夾的出現順序(不重新排序)。※筆者在Win環境看不出差異
 * GLOB_NOCHECK  - 若找不到匹配的檔案路徑,回傳匹配的條件字串
 * GLOB_NOESCAPE - 不要將反斜線視為跳脫字元(※筆者在Win環境下看不出差異)
 * GLOB_BRACE    - 將 {a,b,c} 視為搜尋 'a', 'b', 或 'c'
 * GLOB_ONLYDIR  - 只列出資料夾路徑
 * GLOB_ERR      - 發生讀取錯誤時停止動作(像是無法讀取的資料夾),預設是「忽略錯誤」
 **/

低溫烘培 發表在 痞客邦 留言(0) 人氣()

忘了什麼時候,我意外的連到國外有一篇文章在談論『PHP取得檔案的副檔名(PHP Get File Extension)』的文章。和我之前的前舊文章「取得檔案的副檔名」相比,那位筆者Cowburn顯然比我認真多了。

Cowburn 把所有取得副檔名的方法都找出來了,而且還評論了哪種方法最適合。果然國外的人寫文章,不會只給答案,還會給過程,看來我寫文章也應該好好學著才行。我先列出Cowburn提到的五種方法,並把其中的註解中文化了。下列的所有方式,最後回傳的結果都是"git"字串,沒有 . 喔!

低溫烘培 發表在 痞客邦 留言(1) 人氣()

原來在PHP中,兩種同為陣列的變數,是可以進行相加的,其效果和array_merge()是一樣滴

$a = array('a','b','c');
$b = array('abc');
$c = $a+$b;
$d = array_merge($a+$b);
//$c與$d結果將會是一樣的,為Array ( [0] => abc [1] => b [2] => c )

低溫烘培 發表在 痞客邦 留言(1) 人氣()

最近要將陣列為表格顯示,所以為了方便表格的換行,所以事先將陣列分組可能會比較方便,所以就試著寫下面這個函式

低溫烘培 發表在 痞客邦 留言(0) 人氣()

最近會使用到「取得檔案最後修改的時間」,從PHP手冊發現有兩個功能描述幾乎一模一樣的函式filectime()與filemtime,當然很自然的好奇倒底是差在哪邊,所以就用G大仙查了一下,很慶幸在「這篇討論文」有找到由coopster所提出的解答:),而且還特別說明了fileatime這個函式

低溫烘培 發表在 痞客邦 留言(0) 人氣()

我有趴別人blog的興趣,無意間看見這篇由Fred Wu所寫的「Choosing a PHP Framework Round 2: Yii vs Kohana vs CodeIgniter」,文章內容在描述同屬輕量級的framework的Yii vs Kohana vs CodeIgniter,嗯…Kohana 是從CodeIgniter分出來的還好,但Yii說真的我是今天才知道有這東西。

低溫烘培 發表在 痞客邦 留言(0) 人氣()

最近寫的程式會處理圖片上傳下載的動作,通常都會各別使用到pathinfo()、filesize()、getimagesize(),但是每次都要各別呼叫有點麻煩,所以就寫了一個helper來一次解決這個問題,這個function是針對Kohana寫的,如果你不是使用KHN的話,你可以複製程式碼後,自行修改符合你需要的部分

低溫烘培 發表在 痞客邦 留言(0) 人氣()

最近趴了PHP官方的array函式,發現有多了一個array_product(),他出現在5.1.0之後的版本,可以將陣列裡的值進行相乘的動作,換句話說之前的階乘函式,可以有另外一種寫法了。

低溫烘培 發表在 痞客邦 留言(0) 人氣()

最近使用到nl2br將文章轉存,突然發現好像沒有轉存的函式,用google來G一下,果然也有人遇到同樣的問題,從官方nl2br函式的回文中,就有一堆作者佛心來的=v=,提供了一些反轉函式。不好意思就偷偷給他選擇一個合適拿來用了(感謝),因為我目前開始使用Kohana,所以下列就直接將他寫成helper了。

低溫烘培 發表在 痞客邦 留言(1) 人氣()

無意見看到一段程式碼,突然發覺這就是foreach嘛~滿特別的,因為以前沒這樣想過,所以記錄一下

低溫烘培 發表在 痞客邦 留言(0) 人氣()

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

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

低溫烘培 發表在 痞客邦 留言(0) 人氣()

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

/*********************
 * 使用範例
 * 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

低溫烘培 發表在 痞客邦 留言(0) 人氣()

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

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

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

低溫烘培 發表在 痞客邦 留言(0) 人氣()

使用此加密必需載入並開啟bcompiler的ext,安裝可參考http://www.php.net/manual/en/bcompiler.installation.php

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

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

低溫烘培 發表在 痞客邦 留言(1) 人氣()

  • Nov 01 Sat 2008 23:17
  • Xdebug

xdebug1.png

這個東西之前就看到了,不過一直沒去試著安裝他,最近重新看書又提到了,所以真的動手去試試這套。嗯…。口。意外的好用耶(廢話,不然怎麼會那麼有名),所以順便在這邊發表一篇當做記錄。

低溫烘培 發表在 痞客邦 留言(0) 人氣()

昨天試著要將字串折成陣列,不過在PHP雖然和Javascript都有split(),但是兩個運作的模式卻不一樣

低溫烘培 發表在 痞客邦 留言(0) 人氣()

這幾天幫同事轉csv,開頭都會轉到一個奇怪的「.」符號,突然想到應該是那該死的BOM惹的禍(什麼是BOM),拜請google大仙后,找到下列可以解決開頭BOM的方法。

低溫烘培 發表在 痞客邦 留言(0) 人氣()

taiwan.png

我猜,身為一位台灣程式設計師,一定都會使用到這份資料「台灣縣市鄉鎮郵遞區號XML格式檔」,基於每次要做個地址選擇器,就得重打一次(之前忘了留,囧rz)。超麻煩的,所以我佛心來得=_=,從這裡「http://c2e.ezbox.idv.tw/zipcode.php」把資料手工刻成通用的XML格式,以便大家下載使用!

低溫烘培 發表在 痞客邦 留言(0) 人氣()

使用Notepad++開發PHP的程式設計師可能會發現編輯器並沒有對PHP的關鍵字函式進行變色的動作,關鍵字的擴充必需手動增加字串於langs.model.xml和langs.xml,所以我利用之前寫的phpKeyword的類別,抓了官方所有的函式關鍵字後將他加到檔案中了,若需要的客倌請服用

Notepad++ php keywords.zip

這檔案抓取了所有的關鍵字,所以第一次重新開啟Notepad++會感覺當掉,請耐心等待,之後再重開就不會有這種情況了。

如果你覺得沒必要那麼多的函式關鍵字,那麼可以直接參考我之前的類別,重新去抓取所需要的關鍵字即可。(囧rz…因為我不知道哪些才算是常用的,所以就全抓了)

低溫烘培 發表在 痞客邦 留言(1) 人氣()

1 23