Author:


How to get length of integers in PHP?

Posted by – May 25, 2016

在寫 code 的時候想到這個無關緊要的問題... 如何得知一個數字有幾位數?

比較直覺的想法是這樣....

function digits($num) {
    return (int) strlen((string) abs($num));
}

在 stackoverflow 看到一個也不賴的寫法....

function digits($num) {
    return (int) log(abs($num), 10) + 1;
}

筆記一下,都快忘了 log 怎麼算 XD

如何觸發 Chrome 瀏覽器的 autofill 功能

Posted by – March 7, 2016

好奇在開發網頁前端時,如何觸發 Chrome 自動填表單 (Autofill, Autocomplete) 的功能,找到一些說明,先記錄在本文下方的 Reference。

改天再來實測。

更新 Let’s Encrypt 憑證

Posted by – February 19, 2016

先隨手筆記一下,幾個月前在自己的主機上安裝了 Let's Encrypt 的 SSL 憑證。他們家的憑證每隔一陣子就要 update 一次。

Let’s-Encrypt

紀錄一下更新的步驟:

$ service httpd stop # 停用原本的 http server

$ cd /xxx # 切換到 lets encrypt 所在的路徑

$ ./letsencrypt-auto certonly -t -d your.domain.com -m user@email.com --renew-by-default --agree-tos --agree-dev-preview

紅字部分請自行取代。如果有出現以下訊息,可以輸入 2

How would you like to authenticate with the Let's Encrypt CA?
-------------------------------------------------------------------------------
1: Apache Web Server - Alpha (apache)
2: Automatically use a temporary webserver (standalone)
-------------------------------------------------------------------------------
Select the appropriate number [1-2] then [enter] (press 'c' to cancel):

跑完後記得重啟 http server,收工。

Mac OS El Capitan 10.11 開啟第三方 SSD Trim 功能

Posted by – February 19, 2016

因為幫 Mac mini 換裝了 SSD 硬碟,就會需要幫它啟動 TRIM 的設定。至於 TRIM 是什麼,可以參考這篇 OCZ SSD姿勢佳 – 什麼是TRIM指令?

disk-drive-mac-300x289

OS X 從 Yosemite 10.10.4 開始就允許使用者直接啟動 TRIM 的功能而不需要借助第三方軟體來實現,所以不必安裝軟體,在 terminal 輸入以下指令即可。

sudo trimforce enable

接著輸入管理員密碼,按兩次 y 就會開始進行系統設定。

Screen Shot 2016-02-19 at 11.56.33 PM

要注意的是系統設定完成後會自動重開機,在進行此作業前請先將其他應用都先關閉,以免悲劇。

製作 Mac OS El Capitan 10.11 開機安裝碟

Posted by – February 18, 2016

打算幫家裡那台 mac mini 升級 SSD 而需要做些前置工作,像是先做一顆 USB 安裝碟... 搜尋了一下方案,原來非常簡單啊!!

os_x_el_capitan_roundup More

Truncate all tables in Oracle database

Posted by – November 17, 2015

今天開發團隊終於決定要把開發與測試用的 Oracle 資料庫清空重建了。在長達一年多的開發時間裡,這台測試 DB 是非常重要的開發工具。但長久以來承受了各式各樣亂七八糟的資料,也難以保證測試結果是否符合預期,所以大夥決定將它清空。

不過 Oracle 自己的 GUI 管理工具 SQL Developer 真是頗為難用。
Oracle SQL Developer

想一次清空 (truncate) 是沒有全選 -> 右鍵 -> 清空 這麼方便的事。但是近百個 table 又不想一個一個清... 就下指令吧。

begin
  for t in (select table_name from user_tables)
    loop
      execute immediate ' truncate table  '||t.table_name;
    end loop;
end;

這樣完成清除資料表的任務。

How to disable phone number linking in Mobile Safari?

Posted by – November 4, 2015

同事問了這個問題,如何將 iOS webview 裡出現的電話連結移除,因為畫面中出現了不是電話的數字,卻被系統自動加上了電話連結。

有一個非常簡單的方法,在 HTML 檔案的 <head> 區段加一行宣告即可。

<meta name = "format-detection" content = "telephone=no">

這行宣告會停用所有的電話連結。若是反過想要在停用的情況下,加上例外,則可以自行宣告電話連結,語法如下:

<a href="tel:0932123456">0932123456</a>

主要就是用 tel: 關鍵字來達成。

Skype error on Windows 10 shutdown

Posted by – October 30, 2015

把主要的桌機升級到 Win10 後,自然也把一些常用的軟體裝上。其中 Skype 就是一款很不愛,但很常需要用的軟體。不過在安裝 Skype 後,每次 Win10 關機都會出現一個令人不悅的錯誤,訊息是 「The memory could not be read」。

2015-10-28 08.07.13

More

Laravel 5.0: 紀錄 SQL 指令

Posted by – August 22, 2015

在同事轉貼的一些文章裡翻到這篇记录运行时SQL语句,稍微修改一下,在我的 Laravel 5.0 測試站上實作。

文章中的第一步我就傻眼了,因為我的 php artisan list 裡面沒有 make:listener.... More

Javascript: 檢查生日是否成年

Posted by – August 17, 2015

接到一個開發需求,讓使用者填寫生日,然後用 Javascript 判斷是否滿二十歲。但是需要檢查到月和日... 總覺得有點懶。

Coding 發懶的時候,問 Stack Overflow 就對了....

function getAge(DOB) {
    var today = new Date();
    var birthDate = new Date(DOB);
    var age = today.getFullYear() - birthDate.getFullYear();
    var m = today.getMonth() - birthDate.getMonth();
    if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) {
        age--;
    }    
    return age;
}

總之先修改一下,寫了一個草稿試試。結果如下: More