2014年1月27日 星期一

[PHP] - isset / empty 應用,檢查變數有無被宣告或設置

今天我從客戶端傳送一個 POST/GET 訊息給伺服器端 (PHP) 時,因為我傳送的資料有著不固定的名稱與內容,所以傳送了不知名稱的資料至 PHP,這時 PHP 就出錯了!

後來查了 PHP 官方文件,其實這種錯誤是能夠避免的,方法如下:

檢查一個變數是否有被設置內容時,使用 empty 來進行確認:
<?php

// 顯示為 "YES"

$var0;
$var1='';

if (empty($var0) and empty($var1))
    echo "YES";
else
    echo "NO";


// 顯示為 "FALSE"

$var2="Hello";

if(empty($var2))
    echo "TRUE";
else
    echo "FALSE";

?>

如需檢查這變數是否存在 (已宣告) ,則使用 isset 進行確認:
<?php

// 顯示為 "NO"

$var0;

if (isset($var0))
    echo "YES";
else
    echo "NO";


// 顯示為 "TRUE"

$var1='';
$var2="Hello";

if(isset($var1) and isset($var2))
    echo "TRUE";
else
    echo "FALSE";

?>

這兩種方法看起來相似,其實完完全全是兩樣不同的東西唷!

2014年1月15日 星期三

[C/C++] [VB.NET] - 階層範例,求n!問題

C/C++ 版本
// 階層範例
// (C) 2014 Stubio Awei.
// 2014/1/15
// Source.cpp

#include <iostream>

using namespace std;

int main()
{
 const int SIZE_SUM = 100; // 存放運算結果之陣列大小
 const int LENGTH_SUM = SIZE_SUM -1; // 存放運算結果之陣列長度
 int sum[SIZE_SUM]; // 存放運算結果之陣列
 int N = 12; // 階層數
 int temp = 0; // 暫存,乘開後放置
 int temp0 = 0; // 暫存,進位數

 memset(sum, 0, sizeof(sum)); // 將 sum 全部初始化為零 (0)
 sum[0] = 1; // 階層第一個數都為 1 ,故先給予設定
 for (int i = 2; i < N + 1; i++)
 {
  for (int j = 0; j < SIZE_SUM; j++)
  {
   temp = sum[j] * i + temp0; // 將該位數的數值乘出來,並將上一個進位數加起來
   sum[j] = temp%10; // 取得 temp 所乘出的個位數數字,使用餘除
   temp0 = temp/10; // 取得 temp 所乘出的十位數以上數值
  }
 }

 for (int i = LENGTH_SUM; i>-1; i--)
 {
  // 取得運算出來的數值長度
  if (sum[i] != 0)
  {
   N = i;
   break;
  }
 }

 // 輸出運算結果 sum
 for (int i = N; i >-1; i--)
 {
  cout << sum[i];
 }
 cout << endl;
 system("pause");
}
VB 版本
// 階層範例
Module Module1

    Sub Main()
        Const SIZE_SUM As Integer = 100  ' 存放運算結果之陣列大小
        Const LENGTH_SUM As Integer = SIZE_SUM - 1 ' 存放運算結果之陣列長度
        Dim sum(SIZE_SUM) As Integer ' 存放運算結果之陣列
        Dim N As Integer = 12 ' 階層數
        Dim temp As Integer = 0 ' 暫存,乘開後放置
        Dim temp0 As Integer = 0 ' 暫存,進位數

        sum(0) = 1 ' 階層第一個數都為 1 ,故先給予設定

        For i As Integer = 2 To N
            For j As Integer = 0 To SIZE_SUM
                temp = sum(j) * i + temp0 ' 將該位數的數值乘出來,並將上一個進位數加起來
                sum(j) = temp Mod 10 ' 取得 temp 所乘出的個位數數字,使用餘除
                temp0 = temp \ 10 ' 取得 temp 所乘出的十位數以上數值
            Next
        Next

        For i As Integer = LENGTH_SUM To 0 Step -1
            ' 取得運算出來的數值長度
            If Not sum(i) = 0 Then
                N = i
                Exit For
            End If
        Next

        ' 輸出運算結果 sum
        For i As Integer = N To 0 Step -1
            Console.Write(sum(i))
        Next
        Console.WriteLine()
        Console.Read()
    End Sub

End Module

2013年7月1日 星期一

VC++ 2012 文件檔案路徑筆記

如果想要呼叫在同一資料夾的資料夾下的檔案或者其他資料夾,請試著用以下方法實現:

假如要使用 thefloder 下的 hello.txt ,則...

"./thefloder/hello.txt"

切忌不要...
"../thefloder/hello.txt"
這樣會造成錯誤。

以上。 2017/04/05補充: .. 代表上一個目錄

2013年3月13日 星期三

自守數 (automorphic number)

自守數 簡單來說是一個 正整數自己的平方末幾位數為該數自己本身

舉例說明:

5 * 5 = 25
6 * 6 = 36
25 * 25 = 625
76 * 76 = 5776
376 * 376 = 141376
625 * 625 = 390625

以上均為一些自守數的實際範例。

或可以參考:
[0,1,5,6,25,76,376,625,9376,90625,109376,890625,
 2890625,7109376,12890625,87109376,212890625,
 787109376,1787109376,8212890625,18212890625,
 81787109376,918212890625,9918212890625,
 40081787109376,59918212890625]



2012年3月27日 星期二

Reset CSS 瀏覽器顯示樣式一致化

Reset CSS 瀏覽器顯示樣式一致化


將下方的CSS原始碼貼入你所需要的樣式表中。
------------------------------------------------

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}

------------------------------------------------

2012年3月22日 星期四

Windows 7 鍵盤快捷鍵 讓作業系統更方便

Windows 7 貼心的設計了更多方便的鍵盤快捷鍵。


如果您不清楚 Windows 鍵的位置,請參閱下圖:






  1. Windows 鍵 + 空白鍵

    功能:
    透明化所有視窗,快速查看桌面。使用此快速鍵可以立即將目前所有視窗透明化,以便查看桌面。
  2. Windows 鍵 + 字母鍵“D”

    功能:
    最小化所有視窗,並快速查看桌面。這組快速鍵幫助使用者立即將當前桌面上所有視窗最小化,以便查看桌面,再次按下此快速鍵時,剛剛最小化的視窗又會全部出現了。 
  3. Windows 鍵 + 數字鍵

    功能:
    按照排序打開相應程式。針對固定在快速啟動欄中的程式,如果您能記住啟動欄中的程式排序,直接按下此快速鍵就能馬上調用了。 
  4. Windows 鍵 + 字母鍵“T”

    功能:
    依次查看已經打開程式的預覽圖。使用者可以輕鬆從工作列預覽已打開程式的縮略圖,使用這組快速鍵就能從左到右迴圈查看工作列上的所有預覽圖,同時使用 Windows鍵+Shift 鍵+“T”可以從右至左反方向查看工作。
  5. Windows 鍵 + 字母鍵“G”

    功能:
    依次顯示桌面小工具。如果您的桌面上有太多的小工具的時候,查看起來就不太方便了,此時使用快速鍵迅速讓小工具依次顯示在面前,想找哪一個都十分方便。
  6. Windows 鍵 + 字母鍵“P”

    功能:
    打開“外接顯示”的設定面板,當然這個功能只有接入了一些外接設備後才能派上用場。
  7. Windows 鍵 + 字母鍵“X”

    功能:
    打開“移動中心”設定面板,Windows 7 中的移動中心提供了顯示器亮度控制、音量控制、筆記本電池監控、Mobile 手機同步設置、外接顯示器管理...等多種功能,這個功能主要是針對筆記本電腦。
  8. Windows 鍵 + 符號鍵“+” / Windows鍵+ 符號鍵“-”

    功能:
    打開放大鏡。Windows 7 中新增加了放大鏡功能,對於視力不好的使用者來說,這是十分友好的一項新功能。當按下快捷鍵組合時,Windows 7 將自動開啟放大鏡功能,重複使用 Windows 鍵 + 符號鍵“+” 可以不斷放大內容,使用 Windows 鍵+符號鍵“-” 即可實現縮小功能。
  9. Windows 鍵 + 方向鍵“↑”

    功能:
    使當前使用的視窗最大化。
  10. Windows 鍵 + 方向鍵“↓”

    功能:
    使當前使用中的最大化視窗恢復正常顯示,或者如果當前視窗不是最大化狀態,則會將該視窗最小化到工作列當中。
  11. Windows 鍵 + 方向鍵“←” / Windows 鍵 + 方向鍵“→” (Aero Snap)

    功能:
    使當前使用中的視窗貼向螢幕左側 / 螢幕右側,而只佔用50% 的顯示器面積,此功能應用自如後對同時編輯兩個文檔並進行校對都非常方便。
  12. Windows 鍵 + Shift 鍵 + 方向鍵“←” / Windows鍵 + Shift鍵 + 方向鍵 “→”

    功能:
    跨顯示器右移視窗 / 左移視窗,當使用者使用雙顯示器的時候,並且設置為“桌面延伸”時,使當前視窗移至右側顯示器或左側顯示器顯示,在使用外接投影儀時,也可參照此方法操作。
  13. Windows 鍵 + Home 鍵 ( Aero Shark )

    功能:
    只顯示當前視窗,並且最小化其他視窗,以突出顯示當前使用中的視窗。
  14. Ctrl 鍵+ 滑鼠滾輪

    功能:
    更改桌面圖示的大小。只要在桌面按住 Ctrl 鍵不放,然後滾動滑鼠滾輪,往上滾動是放大圖示,往下是縮小圖示。
  15. Alt 鍵+ P 鍵

    功能:
    顯示或關閉預覽窗格。打開 Windows 檔案總管後,使用Alt 鍵+ P 鍵可以快速顯示或關閉 Windows 檔案總管右側的檔預覽框。
純屬筆記用途,如有爭議請告知
資料來源: 微軟官方網站

2012年2月15日 星期三

初音未來 Sony Ericsson 主題

初音未來 Sony Ericsson 主題


*桌布如上圖,雖與之前網路上流傳的主題背景一樣,但是主題呈現方式是不一樣的



*通話時背景將呈現黑白風格