星期五, 十一月 02, 2007
SVN 將所有 ? 狀態 的檔案列入新增
SVN 在第一次使用 Import 後, 就都要使用 add 來新增檔案, 通常在修改完後, 會 svn status 看看這次有改哪些檔案, 順便看看哪些檔案需要 add 進去.
(閱讀全文)星期五, 十月 12, 2007
PHP5 物件相互引用, 造成 Memory Leak
PHP5 的 物件A 裡面再 new 物件B, 然後 unset(物件A), 會發現 Memory 還是存在(Memory Leak) 的狀況, 然後如果程式繼續不斷的遞迴跑下去, 很快記憶體就會使用完, 然後就會出現 PHP Fatal error: Allowed memory size of .. 等的錯誤訊息.
星期二, 十月 09, 2007
MySQL Timestamp 型態 的 屬性(新增/修改 自動更新 Timestamp型態 的 欄位)
MySQL 的 timestamp 型態 的屬性比較特別, 預設 timestamp 的屬性是, 只要有值 新增/修改(同一個row), MySQL 會自動幫你將 "timestamp 型態的欄位" 寫入現在時間.
有兩種屬性可供調整使用:
- 自動初始化: 此欄位 寫入 資料時, 自動將 timestamp 的欄位寫入現在時間(建立時, 自動寫入時間).(DEFAULT CURRENT_TIMESTAMP)
- 自動更新: 此欄位 修改 資料時, 自動將 timestamp 的欄位寫入現在時間(更新時, 自動寫入時間). (ON UPDATE CURRENT_TIMESTAMP)
星期日, 十月 07, 2007
JavaScript Fix CSS, 讓 IE 5/6 的 CSS 顯示/動作 跟 IE 7 一樣
同樣的 CSS 在 IE5/6/7 顯示的效果都有可能會有所不同, 所以就有人寫 JavaScript 來解決 IE7 上可以跑, IE5/6 不能跑(或不能顯示)的問題. (ex: png 透明圖 就是最常遇到的問題).
星期四, 十月 04, 2007
PHP: 於 Apache1.3 和 Apache2.0 抓到的 $_SERVER['SCRIPT_NAME'] 值不同
所以說最近踩的地雷特別多, 要判斷目前是否在此頁面, 通常可以用 $_SERVER['SCRIPT_NAME'] 來抓值, 但是在 Apache 1.3 和 Apache 2.0 抓到的值是不一樣的.
星期三, 十月 03, 2007
JavaScript: substr() 負數的算法 IE, Firefox 不同
最近踩的地雷真多, IE 對 margin-top 的負數, IE6/7 都不同, 然後臨時又發現 JavaSciprt 的檢查在 IE 有問題, 大概情況是如下:
做圖片上傳, javascript 的檢查最簡單的就是檢查檔名後四個字元, 再轉小寫, 去看看是不是 .jpg, jpeg, .bmp, .png ... 等. 於是就用 substr 來取最後四個字元囉~
星期日, 九月 16, 2007
使用 gettext 來實做 PHP 多國語系支援(I18N)
要做多國語系支援的網站或程式有很多方式, 常見的是設某種國家的語系檔, 然後檔案內都是變數, 之後程式依照使用者的語系的, 去讀語系檔, 以此來達成多國語系.
而 gettext 是另一種標準的方案, 可以 ls /usr/share/locale/zh_TW/LC_MESSAGES
看看, /usr/share/locale 放著各種語系的翻譯檔(翻譯系統程式, ex: apt.mo, dpkg.mo)(*.mo是編譯過的翻譯檔).
現在來用 php + gettext 實做多國語系的支援吧~
星期四, 九月 13, 2007
好文: 抓蟲特攻隊秘技大公開(Debug)
程式 Debug 是一定要的, 說寫出來的程式沒有任何問題, 請不要相信他的傻話(程式只有幾行的不在此限, 或者 請想像我指的是一套 系統).
此人(或說 下述四篇文章)把 Debug 的流程做整理和撰寫, 不管初學者或資深者都蠻適合研讀一下, 不一定要四篇都看, 主要是看第一篇.
最後一篇的這句話 一次只解決一個臭蟲
蠻經典的, 這句話的另一個意思是, 不要解 1 個 Bug 後, 又生出 2個其它的 Bug 來. XD
星期五, 八月 31, 2007
PHP function: 亂數密碼產生
亂數密碼產生的 function 蠻常用的, 還是直接 Release 一個出來修改比較方便 :P總之密碼原則就是 6~8 個字以上, 然後包含英數字大小寫, 再加上符號, 就是比較安全的密碼, 通常想密碼很辛苦, 最簡單的就是用這種產生器, 產生出一組符何上述條件的, 想辦法背起來, 半年 ~ 1年換個一次密碼 (建議是 3個月要換一次. XD)
星期五, 八月 24, 2007
Debian Linux: ADSL PPPoE 自動重撥 Script
昨天早上網路(PPPoE)斷線, 沒有察覺到, 正好整天都不在家, 在外面要連回來查資料才發現, 這個小站死掉還蠻痛苦的(資料都懶得記, 直接寫在上面), 果然有些東西還是得要用腦袋記... XD
但是想想用腦袋記還是太辛苦(頭腦不好 XD), 還是寫隻 Script 做斷線重撥的動作好了. Orz..
星期四, 八月 23, 2007
Javascript Regex 的 字串比對(Match) 與 取代(Replace)
Javascript 的 Regex 該怎麼使用, 如何做 Match 和 Replace 的動作, 語法該怎麼寫.
星期三, 八月 22, 2007
Javascript 設定 getElementById 屬性的方法
紀錄 Javascript 設定 getElementById 的方法, 和 Style 有哪些屬性可以設定.(暫不討論 Framework 的寫法, 不過 style 能設的屬性是都一樣的. XD)
星期一, 八月 20, 2007
PHP 等比例縮圖程式
兩個 function, 一個算比例要多少(getResizePercent), 另一個 function 依照比例將圖片縮小, 縮到剛好符合預計縮小的其中一邊的尺寸(ImageResize).
使用上只要將這兩個 function 一起放進程式裡面, 直接呼叫 ImageResize(), 把參數傳進去即可.
星期二, 八月 14, 2007
Programmer 專用最佳字型 - Monaco font
昨天看到 Monaco Font
這篇文章, 然後看了附圖後, 覺得這字型真棒(看到此字型前, 我都是使用 DejaVu Sans Mono
), 然後當然就找來試試囉~
剛開始不太習慣, 字的間距比較大, 但看久感覺很舒服, 值得推薦~ :)
星期三, 八月 01, 2007
PHP 使用 SimpleXML 遇到 Illegal offset type(型態轉換問題) 解法
PHP 的 simplexml_load_string/simplexml_load_file 很方便, 很簡單的就能把 XML parse 成 PHP Object, 然後就看要怎麼處理資料, 再處理即可~
- simplexml_load_string : 丟 XML 進去即可
- simplexml_load_file : 丟 URL 進去也吃, 拿來 Parse XML/RSS Feed 超方便
做簡單的處理都沒什麼異常, 但是現在遇到要將 Object value 轉換成一般 PHP Array 的 key -> value 型態就遇到問題了. 不曉得是我不會用還是怎麼樣, 查不到正確該怎麼解, 所以寫起來紀錄一下.(希望有正確解法, 還請指導.. Orz)
註: PHP Version: PHP 5.2.3
(閱讀全文)



