2015年10月15日 星期四

PHP 不分中、英文取得正確的字串長度

在 PHP 一般我們取得字串長度都會聯想到 strlen 這個 function,但是當字串裡面有中文時就會發現,strlen 算出來的數字不符合我們的預期,原因是 strlen 是計算字元長度,中文的 byte 數會比英文多。

因此,如果想不分中英文來取得字串長度就該使用 mb_strlen,以下就附上範例:
  1. <?php

  2.     $str = "測試Test";
  3.     echo "字串:" . $str . "<br>";
  4.     echo "strlen:" . strlen($str) . "<br>";
  5.     echo "mb_strlen:" . mb_strlen($str, 'utf-8') . "<br>";

  6. ?>

2015年10月13日 星期二

如何在 Javascript each 中做 break 或 continue

我們都知道很多程式語言都有 breakcontinue 可以用,但若想用 Javascript each 使用這兩個語法,可不是這樣用的,以下就來看看正確的使用方式吧!

  1. $(".items").each(function() {
  2.     if ( wantContinue ) {
  3.         return true;
  4.     }  //  continue

  5.     if ( wantBreak ) {
  6.         return false;
  7.     }  //  break
  8. });

結論就是:
  1. return true > continue
  2. return false > break


2015年10月10日 星期六

八卦(易經)算命之六十四卦自動擺盤

之前用 Android 的手機時,由於偶爾會幫人算命及卜卦,所以寫了一隻 APP(六十四卦卦象速查表) 來查表能,但自從兩年前換了 IPhone 後,要幫別人算命的時候就沒 APP 可以用了...而且有時存好的查表網站都死掉要重找,所以決定怒寫一個網站,順便證明一下自己寫程式的功力有沒有進步。

上次寫 APP 的時候,只做了查表的功能,且動線沒有規畫的很好...花了三週左右。而這次的網站只要輸入日期就可以自動排出完整卦象且畫面簡單明瞭,總共只花了一週。所以看來這兩年來,我寫程式的功力真的是有大大提升啊!!! 以下就附上我新寫的自動擺盤系統吧!