![]() |
溫瑞烘老師的教學歷程檔案(Teaching ePortfolio) - 105-1-物件導向程式設計-資管二乙 - 第1週-PHP程式語言 |
| 第1週-PHP程式語言
PHP的資料型態 本文引自http://pydoing.blogspot.tw/2012/10/php-tutorial.html PHP 的重要資料型態 布林 (boolean) 整數 (integer) 浮點數 (floating point number) 字串 (string) 陣列 (array) NULL 基本上程式 (program) 會自動判斷變數 (variable) 的資料型態 (data type) , PHP 的變數寫法就比較特別一點,用金錢符號 $ 開頭, $b = True; // 布林型態 $i = 1234; // 整數型態 $f = 12.3; // 浮點數型態 $s = "12"; // 字串型態 也可以使用單引號 '12' 布林型態只有兩種常數 True 或 False ,整數是不含小數點的數字,浮點數則是包含小數點的數字,字串為雙引號圍起來的任意字元。 $a1 = array(10, 20, 30, 40); 建立陣列需要用到內建函數(function) array(),索引與資料放在參數列 (parameter list) ,若無提供索引,如 $a1 ,索引會自動由 0 遞增填補,因此存取 $a1 如下 echo $a1[0]; // 顯示10、注意:位置由0開始 echo $a1[1]; // 顯示20 echo $a1[2]; // 顯示30 echo $a1[3]; // 顯示40 陣列變數後面緊接中括號,中括號裡面則放索引值。 當然,如果有提供索引,存取陣列的元素就得依據索引值 echo $a2[1]; // 顯示100 echo $a2["A"]; // 顯示33.06 echo $a2["1"]; // 顯示Tony PHP的變數命名規則 PHP 的變數 (variable) 由金錢符號 $ 開頭,其後可接底線、英文大小寫字母或數字,但數字不可以接在金錢符號之後,下面這些都是合法的變數名稱: $variable_name; $_code; $CODE; $_1234; $a1234; $some; $Some; 須注意一點,英文大寫與小寫對變數名稱來說是不一樣的,因此 $some 與 $Some 是兩個不同的變數 有沒有發現每一行程式都要以分號結尾,若是漏打分號的話,程式就無法執行。分號代表什麼意思呢?有分號結尾的程式碼,在 PHP 稱之為陳述 (statement) , PHP的運算式與陳述 運算式 (expression) 由運算元 (operand) 與運算子 (operator) 所組成,依運算元的數量,運算式可以簡單分為下列三種:單一個運算元,兩個運算元,三個運算元。 單一運算元就構成一個運算式,運算元可以是變數(variable) 、常數(literal)、或呼叫函數 (function) ,例如 $a; // 以變數當運算元 3; // 以常數當運算元 echo "\n"; // 使用關鍵字 運算式,顧名思義,其為運算出一個結果的式子,因此單一運算元的運算式所得到的結果就是運算元的值,如果是函數方法呼叫,就是函數的回傳值 (return value)。單一運算元也可以結合單元運算子,單元運算子有
正負如同一般數學表示正負值一樣,同樣的,負負會得正 $a = -3; $b = +$a; // $b 會等於 -3 $c = -$a; // $c 會等於 3 遞增、遞減則是會將整數變數遞增 1 或遞減 1 ,有前後之別 $a = 3; $b = ++$a; // $b 會等於 4 $c = $a++; // $c 會等於 4 $d = --$a; // $d 會等於 4 $e = $a--; // $e 會等於 4 邏輯補數運算子會把 True 變成 False , False 變成 True $a = True; $b = !$a; // $b 會等於 False $c = !$b; // $c 會等於 True 一般運算子都須結合兩個運算元,例如算術運算子 (arithmetic operator) ,可用在整數 (integer) 及浮點數 (floating-point number) ,計算結果也為整數或浮點數
例如 $a = 11; $b = $a + 33; // $b 會等於 44 $c = $b - 22; // $c 會等於 22 $d = $c * 11; // $d 會等於 242 $e = $d / 44; // $e 會等於 5.5 $f = $e % 55; // $f 會等於 5 相等性及關係運算子 (equality and relational operator) ,可用於整數及浮點數或布林值 (Boolean value) ,計算結果不是 True 就是 False
例如 $a = 11; $b = 22; $c = $a >= $b; // $c 會等於 False $d = $a <= $b; // $d 會等於 True $e = $c == $d; // $e 會等於 False $f = $a != $b; // $f 會等於 True 我們運用的等號,其實屬於指派運算子 (assignment operator) ,所謂的指派是把等號右邊的值給左邊的變數
例如 $a = 11; $a += 33; // $a 會等於 44 $a -= 22; // $a 會等於 22 $a *= 11; // $a 會等於 242 $a /= 44; // $a 會等於 5.5 $a %= 55; // $a 會等於 5 PHP 選擇敘述與迴圈 本文引自http://pydoing.blogspot.tw/2012/10/php-tutorial.html
程式中的選擇 (selection) 就是依條件 (condition) 使程式有不同的執行方向, if (3 > 5) { echo "喔,3大於5發生了!"; } 以上條件為 3 大於 5 ,如果 3 大於 5 為真,程式就會執行條件後的大括弧的程式區塊 (block) ,
if 與 else 連用,條件為真,執行 if 後的程式區塊,條件為假,就執行 else 後的程式區塊 if (3 > 5) { echo "喔,3大於5發生了!"; } else { echo "還好,3沒有大於5!"; }
if-else 也可以多個連用,形成 if-else if-else 的多重選擇,最後的 else 表示以上皆非 if (3 > 5) { echo "喔,3大於5發生了!"; } else if (4 > 5) { echo "喔,4大於5發生了!"; } else if (5 > 5) { echo "喔,5大於5發生了!"; } else if (6 > 5) { echo "6當然大於5哩!"; } else { echo "以上沒有符合的條件 :("; }
範例程式一 <?php if (3 > 5) { echo "喔,3大於5發生了!"; } else if (4 > 5) { echo "喔,4大於5發生了!"; } else if (5 > 5) { echo "喔,5大於5發生了!"; } else if (6 > 5) { echo "6當然大於5哩!"; } else { echo "以上沒有符合的條件"; } ?>
if-else if-else 多重選擇的缺點是需要很多個條件,程式需要做很多個條件判斷, switch (6) { case 3: echo "選擇是3..."; break; case 4: echo "選擇是4..."; break; case 5: echo "選擇是3..."; break; case 6: echo "選擇是6..."; break; default: echo "以上沒有符合的條件"; }
這裡, switch 後面的小括弧必須是常數值,此例中直接使用字面常數,也可以使用有常數值的變數(variable) 。
範例程式二 <?php switch (6) { case 3: echo "選擇是3..."; break; case 4: echo "選擇是4..."; break; case 5: echo "選擇是3..."; break; case 6: echo "選擇是6..."; break; default: echo "以上沒有符合的條件"; } ?>
程式 (program) 中的迴圈 (loop) 就是在特定程式區塊 (block) 中,重複執行相同的工作。 $i = 10; // 設定控制變數 while ($i > 0) { // 迴圈工作區 echo $i . "<br>"; $i--; // 調整控制變數值 } 這個迴圈所進行的工作很簡單,先在命令列上印出 10 ,然後一路倒數到 1 為止。迴圈有三個地方要注意 1. 設定控制變數 2. 條件 3. 調整控制變數值
while 迴圈的控制變數 (control variable) 必須在 while 之前就先設定好,此例中將控制變數 $i設定為 10 。 範例程式三 <?php $i = 10; // 設定控制變數 while ($i > 0) { // 迴圈工作區 echo $i . "<br>"; $i--; // 調整控制變數值 }
當我們明確知道重複次數的時候,我們得利用控制變數來記錄 while 迴圈所進行次數,
$i = 10; // 設定控制變數 while ($i > 0) { // 迴圈工作區 echo $i . "<br>"; // 沒有調整控制變數值 }
這樣一來,控制變數 $i 永遠大於 0 ,所以迴圈會一直重複執行,此例中會不斷的在命令列印出 10,
do-while 迴圈可視為 while 迴圈的顛倒,先 do 才做 while 的條件測試。 範例程式四 <?php $i = 1; // 設定控制變數 do { // 迴圈工作區 echo $i . "<br>"; $i++; // 調整控制變數值 } while ($i < 11); ?>
另外一個 for 迴圈則是把控制變數的設定、迴圈結束條件、控制變數的調整全都寫在小括弧之中,如下 for ($i = 10; $i > 0; $i--) { echo $i . "<br>"; }
for 之後的小括弧用兩個分號區隔三個項目,依序是控制變數的設定、迴圈結束條件、控制變數的調整。 範例程式五 <?php for ($i = 10; $i > 0; $i--) { echo $i . "<br>"; } ?> 範例 : 1+2+3+....+1000的總和 練習:寫一PHP程式,產生100個介於1至100的亂數 計算偶數和、奇數和、總和、平均、最大值、最小值
|
|
中華科技大學數位化學習歷程 - 意見反應 | ![]() |