顯示具有 php 標籤的文章。 顯示所有文章
顯示具有 php 標籤的文章。 顯示所有文章

2013年12月17日 星期二

PHP 檔案操作

如何對檔案進行 唯一 的資料讀寫

fopen  開檔
flock LOCK_EX 鎖檔
fread filesize  讀入檔案
rewind  移動檔案 point
ftruncate 0 清空檔案
fwrite   寫入檔案
flock LOCK_UN  解鎖
fclose  關檔

程式範例



$handle = fopen("file.txt","r+");

//Lock File, error if unable to lock
if(flock($handle, LOCK_EX)) {
    $count = fread($handle, filesize("file.txt"));    //Get Current Hit Count
    $count = $count + 1;    //Increment Hit Count by 1
    rewind($handle);    //Move file point
    ftruncate($handle, 0);    //Truncate the file to 0
    fwrite($handle, $count);    //Write the new Hit Count
    flock($handle, LOCK_UN);    //Unlock File
} else {
    echo "Could not Lock File!";
}

//Close Stream
fclose($handle);







2013年10月22日 星期二

[資料備份] 利用 PHP PharData 進打檔案打包並上傳至FTP

本來打算用簡單的 Shell Script 進行備份

且相關文章教學,也是很多....

But ....

出現了一個問題,在執行 ftp 連線,會停留在輸入帳、密階段

即使已經有設定帳、密還是一樣 ....

anyway ~

練習一下,用 PHP 撰寫備份程式吧!!


2013年10月7日 星期一

記錄 Client 端 IP

因為擔心 NO-IP 無法正常運作

所以,在開機後,送一個 HTTP REQUEST ( GET ) 到另一台主機

主要是為了取得開機後所產生的 IP

以下是 負責記錄 Client 傳送過來的 IP 位置


2013年6月3日 星期一

PHP Multi Process


1.1 產生子程序
1.1.1 產生一個子程序
在PHP裡沒有支援多執行緒編程 (multi-threaded programming) ,因此需要寫類似的功能就必須採取多程序編程 (multi-process programming) 的方式。一般在 unix-like 的作業系統下,要寫多程序程式一定會用到fork。在 PHP 裡也不例外。若要在 PHP 中建一個子程序,要叫用 pcntl_fork()函式。


2013年5月29日 星期三

PHP Note. ( array merge, array_merge_recursive )

在PHP程式中,要合併Array,雖然有提供 array_merge 函式

但結果好像不是我想要的,原來,使用 + 符號,就可以了

PHP Note. ( phpenv , clearstatcache )

phpenv

設定環境變數,例如:Oracle資料庫,要設定語系

PHP Note. ( 內部常數 Predefined Constants)

在撰寫程式,通常表示路徑,都會用到 斜線 or 反斜線

在 windows ,路徑為 D:\folder\sub_folder\ (反斜線)

在 linux 則為 /home/web/folder (斜線)

關於 載入 Class

關於 載入 Class 的進化史
自從程式寫作方式轉換至 Class 的開發方式
就慢慢的將各功能寫成 Class , 也都將各 Class 存成獨立的檔案
例: Corder.php , class.order.php 等檔案命名方式
隨著類別產生各自的檔案,也在程式執行時,載入該頁面所需要執行的 Class

2013年5月22日 星期三

補齊HTML Tag

最近同事在修正使用者輸入 HTML ,但有不完整的狀況,要將 HTML Tag 補齊

例如:

input : <font color="#f00">aaaa<b>aaaaaaaaaaa
output : <font color="#f00">aaaa<b>aaaaaaaaaaa</b></font>

2013年5月21日 星期二

JAVASCRIPT , CSS , PHP 判斷瀏覽器

JavaScript , CSS , PHP 判斷瀏覽器之作法,如下:


debug_print_backtrace | PHP

系統在開發,很常使用到 call function , 甚至會有 func call func , 再 call func ....
PHP提供一個很好 trace function caller 的函式 debug_print_backtrace

以下是來自官網的說明範例

2013年5月18日 星期六

CentOS 5.x 升級 PHP 5.1 to 5.3



Upgrade PHP from 5.1 to 5.3

之前嘗試將 CentOS 5.x 版本的 PHP進行升級
都會不成功,原來,升級前,要先移除PHP套件
再進行升級,就成功了!!
簡易步驟如下:

2013年5月17日 星期五

php 匿名函式呼叫?

在 JavaScript 有所謂的匿名函式,但在 php 是否也有呢?

看到一段滿特別的程式碼,call_user_func 與 switch (true) 的使用,如下: