移至主內容
網頁技術
首頁  >  網頁技術目錄  >  PHP的迴圈

PHP的迴圈

2021/8/20 , 由 Wanding 編寫發布
分類:

如果某一段程式要重複執行100次,難道我們就把此段程式碼打100次嗎? 這時候,心想如果有個方法能叫電腦自己自動執行100次,然後自己去喝茶休息,多美好。而這個方法就稱為"迴圈"。

 

1. for迴圈

for迴圈是一最簡單的迴圈使用,它提供以計數器的方式來控制迴圈。for迴圈的運作過程中,會使用某一變數作為存放迴圈執行的次數,透過設定的迴圈變數初始值、圈條件判斷、與變數數值的增減量,來控制迴圈要執行的次數,其中迴圈條件判斷及變數固定數值增加或減少,使用的格式和流程圖如下:

格式

<?php
    for(迴圈起始值;迴圈判斷條件;數值增減量){
        PHP程式碼;
    }
?>

 

流程圖

for-loop

 

計算從1累加到100的總和,使用for迴圈寫出程式

  1. 計算初始值(1)
  2. 結束值 (100)
  3. 數值遞增值 (1)
  4. 累加總和 (sum)
<?php
    $sum = 0;
    for($i=1;$i<=100;$i++){
        $sum+=$i;
    }
    echo "for迴圈<br>數字1累加到100結果為".$sum;
?>

執行結果:

for迴圈
數字1累加到100結果為5050

 

 

2. while迴圈

While迴圈是一種判斷條件成立才進行迴圈使用的方法,與for迴圈的差別在於其語法中並無初始值與增減量的設定,通常while迴圈會在其程式碼內才做會影響條件判斷的指令。使用方法如下:

格式

<?php
    while(迴圈判斷條件){
        PHP程式碼;
    }
?>

 

流程圖

while-loop

 

以while迴圈,從1累加到100的程式碼

<?php
    $sum=0;$i=1;
    while($i<=100){
        $sum+=$i;
        $i++;
    }
    echo "while迴圈<br>數字1累加到100結果為".$sum;
?>

執行結果:

while迴圈
數字1累加到100結果為5050

 

 

3. do while迴圈

do while迴圈與while迴圈相似,差別在於do while迴圈不管事件是否成立,都會先執行一次所指定的程式碼,之後再進行判斷決定是否要繼續執行迴圈,使用方法如下說明:

格式

<?php
    do{
      PHP程式碼;
    }(迴圈判斷條件);
?>

 

流程圖

do-while

 

程式範例

<?php
    $i=1;
    do{
        echo "do while迴圈執行第".$i."次<br>";
        $i++;
    }while($i>3);
?>

執行結果:

do while迴圈執行第1次
 

 

4. 巢狀迴圈

巢狀迴圈即是一個迴圈內有一個至多個迴圈在裡面,主要用於在多種狀況下且需要再做另外多種情況下的判斷及運算。比如,while迴圈內有一個for迴圈,這即是一種巢狀圈。

程式範例

<?php
    $i=1;
    while($i<=2)
    {
        for($j=1;$j<=3;$j++)
        {
           echo "while迴圈第".$i."次,for迴圈第".$j."次<br>";
        }
        $i++;
    }
?>

執行結果:

while迴圈第1次,for迴圈第1次
while迴圈第1次,for迴圈第2次
while迴圈第1次,for迴圈第3次
while迴圈第2次,for迴圈第1次
while迴圈第2次,for迴圈第2次
while迴圈第2次,for迴圈第3次

 

 

5. break 與 continue

break即是在迴圈的執行過程中,強制中斷回圈內執行的程式碼,此方法通常會配合條件判斷來使用。

程式範例

<?php
    $i=1;
    while($i<=99)
    {
       echo "while迴圈執行第".$i."次<br>";
       if($i == 3)
       {
           echo "while迴圈break跳出";
           break;        
       }
       $i++;
     }
?>

執行結果

while迴圈執行第1次
while迴圈執行第2次
while迴圈執行第3次
while迴圈break跳出

 

continue是可以讓迴圈略過此階段過程,直接執行下一階段迴圈。

程式範例

<?php
    for($i=1;$i<=10;$i++)
    {
        if($i<7)
        {
            continue;
        }       
        echo "while迴圈執行第".$i."次<br>";       
     }
?>

 

執行結果

while迴圈執行第7次
while迴圈執行第8次
while迴圈執行第9次
while迴圈執行第10次

網頁技術
首頁  >  網頁技術目錄  >  PHP的迴圈

PHP的迴圈

2021/8/20 , 由 Wanding 編寫發布

如果某一段程式要重複執行100次,難道我們就把此段程式碼打100次嗎? 這時候,心想如果有個方法能叫電腦自己自動執行100次,然後自己去喝茶休息,多美好。而這個方法就稱為"迴圈"。

 

1. for迴圈

for迴圈是一最簡單的迴圈使用,它提供以計數器的方式來控制迴圈。for迴圈的運作過程中,會使用某一變數作為存放迴圈執行的次數,透過設定的迴圈變數初始值、圈條件判斷、與變數數值的增減量,來控制迴圈要執行的次數,其中迴圈條件判斷及變數固定數值增加或減少,使用的格式和流程圖如下:

格式

<?php
    for(迴圈起始值;迴圈判斷條件;數值增減量){
        PHP程式碼;
    }
?>

 

流程圖

for-loop

 

計算從1累加到100的總和,使用for迴圈寫出程式

  1. 計算初始值(1)
  2. 結束值 (100)
  3. 數值遞增值 (1)
  4. 累加總和 (sum)
<?php
    $sum = 0;
    for($i=1;$i<=100;$i++){
        $sum+=$i;
    }
    echo "for迴圈<br>數字1累加到100結果為".$sum;
?>

執行結果:

for迴圈
數字1累加到100結果為5050

 

 

2. while迴圈

While迴圈是一種判斷條件成立才進行迴圈使用的方法,與for迴圈的差別在於其語法中並無初始值與增減量的設定,通常while迴圈會在其程式碼內才做會影響條件判斷的指令。使用方法如下:

格式

<?php
    while(迴圈判斷條件){
        PHP程式碼;
    }
?>

 

流程圖

while-loop

 

以while迴圈,從1累加到100的程式碼

<?php
    $sum=0;$i=1;
    while($i<=100){
        $sum+=$i;
        $i++;
    }
    echo "while迴圈<br>數字1累加到100結果為".$sum;
?>

執行結果:

while迴圈
數字1累加到100結果為5050

 

 

3. do while迴圈

do while迴圈與while迴圈相似,差別在於do while迴圈不管事件是否成立,都會先執行一次所指定的程式碼,之後再進行判斷決定是否要繼續執行迴圈,使用方法如下說明:

格式

<?php
    do{
      PHP程式碼;
    }(迴圈判斷條件);
?>

 

流程圖

do-while

 

程式範例

<?php
    $i=1;
    do{
        echo "do while迴圈執行第".$i."次<br>";
        $i++;
    }while($i>3);
?>

執行結果:

do while迴圈執行第1次
 

 

4. 巢狀迴圈

巢狀迴圈即是一個迴圈內有一個至多個迴圈在裡面,主要用於在多種狀況下且需要再做另外多種情況下的判斷及運算。比如,while迴圈內有一個for迴圈,這即是一種巢狀圈。

程式範例

<?php
    $i=1;
    while($i<=2)
    {
        for($j=1;$j<=3;$j++)
        {
           echo "while迴圈第".$i."次,for迴圈第".$j."次<br>";
        }
        $i++;
    }
?>

執行結果:

while迴圈第1次,for迴圈第1次
while迴圈第1次,for迴圈第2次
while迴圈第1次,for迴圈第3次
while迴圈第2次,for迴圈第1次
while迴圈第2次,for迴圈第2次
while迴圈第2次,for迴圈第3次

 

 

5. break 與 continue

break即是在迴圈的執行過程中,強制中斷回圈內執行的程式碼,此方法通常會配合條件判斷來使用。

程式範例

<?php
    $i=1;
    while($i<=99)
    {
       echo "while迴圈執行第".$i."次<br>";
       if($i == 3)
       {
           echo "while迴圈break跳出";
           break;        
       }
       $i++;
     }
?>

執行結果

while迴圈執行第1次
while迴圈執行第2次
while迴圈執行第3次
while迴圈break跳出

 

continue是可以讓迴圈略過此階段過程,直接執行下一階段迴圈。

程式範例

<?php
    for($i=1;$i<=10;$i++)
    {
        if($i<7)
        {
            continue;
        }       
        echo "while迴圈執行第".$i."次<br>";       
     }
?>

 

執行結果

while迴圈執行第7次
while迴圈執行第8次
while迴圈執行第9次
while迴圈執行第10次

返回目錄
網頁技術
首頁  >  網頁技術目錄  >  PHP的條件敘述

PHP的條件敘述

2021/8/11 , 由 Wanding 編寫發布
分類:

我們可以利用運算式來作條件的判斷,判斷在某條件下才執行特定程式敘述,這個過程稱條件敘述。以下分別說明:

 

1. if 條件敘述

簡單來說,if 條件敘述式用來判斷某一事件是否成立,如果成立則會運作指定的事件或程式碼。如果以日常生活來說,如果要去看醫生,要帶健保卡前往。若以程式運作流程來說,如果變數的數值大於100,則會除於3。

<?php
    if (判斷條件){
        PHP程式碼;
    }
?>

 

流程圖:

ifelse01

 

程式說明

<?php
    $number = "123";

    if($number == "123"){
    echo "號碼是123";
    }
    if($number == "789"){
    echo "號碼是789";
    }
?>

執行結果

號碼是123

 

 

2. if...else條件敘述

if...else條件敘述即是判斷事件是否成立,若事件成立,則執行該指定的程式碼;若不成立則可以執行其他指定的程式碼。與前面的if 條件敘述相似,差別在於條件沒成立也可以執行其他指定的程式碼。

<?php
    if (判斷條件){
        PHP程式碼1;
    }else{
        PHP程式碼2;
    }
?>

 

流程圖:

ifelse02

程式說明:

<?php
    $number = "789";
    if ($number == "123"){
        echo "號碼是123";
    }
    
    if($number == "789"){
        echo "號碼是789";   
    }
?>

執行結果

號碼是789

 

 

3. if...else if條件敘述

elseif條件敘述即是判斷多個事件是否成立,若第一個事件成立,則執行第一個事件指定的程式碼;若第二個事件成立,則執行第二個事件指定的程式碼;下面以此類推到最後一行elseif條件敘述,其條件敘述後也能也能使用else條件來執行上述條件皆不成立時需執行的執定程式碼。此條件敘述與上述兩種條件敘述的相似,其差別在於可以指定多個條件來做事件判斷並執行條件成立內程式碼。

使用格式:

<?php
    if (判斷條件1){
       PHP程式碼1;
    }else if (判斷條件2){
       PHPt程式碼2;
    }else{
       PHP程式碼3;
    }
?>

 

流程圖:

ifelse03

程式說明:

<?php
    $number = "456";

    if($number == "123"){
         echo "號碼是123";
    }
    else if($number == "456"){
         echo "號碼是456";
    }else{
         echo "號碼不是123,也不是456";
    }
?>

執行結果:

號碼是456

 

 

4. switch 條件敘述

switch條件敘述即是判斷變數、常數或運算式其結果是否符合指定的結果,若符合其一指定結果則執行其指定的程式碼。

switch條件敘述常被用來簡化elseif條件敘述,舉例來說,以switch 的方式來撰寫,就只需要判斷(switch)變數是符合下面哪一個情況(class),就執行對應的輸出。差別在於switch條件敘述只有一條件判斷,且在使用上較為精簡明白。

使用格式:

<?php
    switch(變數、常數、或運算式){
    case '結果1':
        PHP程式碼1;
        break;
    case '結果2':
        PHP程式碼2;
        break;
    default:    //case條件預設(皆不成立)執行該指定程式
        PHP程式碼3;
    }
?>

 

流程圖:

switch

 

程式碼說明:

<?php
    switch(4/2){
    case'1':
        echo "計算結果為1";
        break;
    case'2':
        echo "計算結果為2";
        break;
    default:
        echo "計算結果不為1或2";
    }
?>

執行結果:

計算結果為2

網頁技術
首頁  >  網頁技術目錄  >  PHP的條件敘述

PHP的條件敘述

2021/8/11 , 由 Wanding 編寫發布

我們可以利用運算式來作條件的判斷,判斷在某條件下才執行特定程式敘述,這個過程稱條件敘述。以下分別說明:

 

1. if 條件敘述

簡單來說,if 條件敘述式用來判斷某一事件是否成立,如果成立則會運作指定的事件或程式碼。如果以日常生活來說,如果要去看醫生,要帶健保卡前往。若以程式運作流程來說,如果變數的數值大於100,則會除於3。

<?php
    if (判斷條件){
        PHP程式碼;
    }
?>

 

流程圖:

ifelse01

 

程式說明

<?php
    $number = "123";

    if($number == "123"){
    echo "號碼是123";
    }
    if($number == "789"){
    echo "號碼是789";
    }
?>

執行結果

號碼是123

 

 

2. if...else條件敘述

if...else條件敘述即是判斷事件是否成立,若事件成立,則執行該指定的程式碼;若不成立則可以執行其他指定的程式碼。與前面的if 條件敘述相似,差別在於條件沒成立也可以執行其他指定的程式碼。

<?php
    if (判斷條件){
        PHP程式碼1;
    }else{
        PHP程式碼2;
    }
?>

 

流程圖:

ifelse02

程式說明:

<?php
    $number = "789";
    if ($number == "123"){
        echo "號碼是123";
    }
    
    if($number == "789"){
        echo "號碼是789";   
    }
?>

執行結果

號碼是789

 

 

3. if...else if條件敘述

elseif條件敘述即是判斷多個事件是否成立,若第一個事件成立,則執行第一個事件指定的程式碼;若第二個事件成立,則執行第二個事件指定的程式碼;下面以此類推到最後一行elseif條件敘述,其條件敘述後也能也能使用else條件來執行上述條件皆不成立時需執行的執定程式碼。此條件敘述與上述兩種條件敘述的相似,其差別在於可以指定多個條件來做事件判斷並執行條件成立內程式碼。

使用格式:

<?php
    if (判斷條件1){
       PHP程式碼1;
    }else if (判斷條件2){
       PHPt程式碼2;
    }else{
       PHP程式碼3;
    }
?>

 

流程圖:

ifelse03

程式說明:

<?php
    $number = "456";

    if($number == "123"){
         echo "號碼是123";
    }
    else if($number == "456"){
         echo "號碼是456";
    }else{
         echo "號碼不是123,也不是456";
    }
?>

執行結果:

號碼是456

 

 

4. switch 條件敘述

switch條件敘述即是判斷變數、常數或運算式其結果是否符合指定的結果,若符合其一指定結果則執行其指定的程式碼。

switch條件敘述常被用來簡化elseif條件敘述,舉例來說,以switch 的方式來撰寫,就只需要判斷(switch)變數是符合下面哪一個情況(class),就執行對應的輸出。差別在於switch條件敘述只有一條件判斷,且在使用上較為精簡明白。

使用格式:

<?php
    switch(變數、常數、或運算式){
    case '結果1':
        PHP程式碼1;
        break;
    case '結果2':
        PHP程式碼2;
        break;
    default:    //case條件預設(皆不成立)執行該指定程式
        PHP程式碼3;
    }
?>

 

流程圖:

switch

 

程式碼說明:

<?php
    switch(4/2){
    case'1':
        echo "計算結果為1";
        break;
    case'2':
        echo "計算結果為2";
        break;
    default:
        echo "計算結果不為1或2";
    }
?>

執行結果:

計算結果為2

返回目錄
網頁技術
首頁  >  網頁技術目錄  >  PHP的運算子

PHP的運算子

2021/8/5 , 由 Wanding 編寫發布
分類:

運算式由運算元和運算子組成。運算元是常數、變數或函數;而運算子就是運算符號,如+ - * /等。

以一條指定運算式給變數的程式敘述來說明,如下列:

運算式

 

在PHP程式語法中,一些計算和判斷會常常用到,所以一定會用到運算子計算。運算子分成下列幾種,接下來分別介紹:

 

1. 算術運算子

就是一般熟悉的加減乘除運算,如下表:

運算子意義範例運算結果
+加法4+913
-減法15-78
*乘法5*1260
/除法9/33
%取餘數66%51

 

程式說明

<?php
    $addition = 7+3;             //加法
    $subtraction = 7-3;          //減法
    $multiplication = 7*3;       //乘法
    $division = 7/3;             //除法
    $remainder = 7%3             //取餘數

    echo "\$addition = $addition <br>";
    echo "\$subtraction = $subtraction <br>";
    echo "\$multiplication = $multiplication <br>";
    echo "\$division = $division <br>";
    echo "\$remainder = $remainder";
?>

執行結果

$addition = 10
$subtraction = 4
$multiplication = 2.3333333333333
$remainder = 1

 

 

2. 遞增與遞減運算子

遞增與遞減運算子即是一個變數的值會隨著執行次數持續加1或減1,如下表所示:

運算子意義範例($a=6)運算結果
++遞增$a++$a=7
--遞減$a--$a=5

 

程式說明

<?php
    $ascending = 3;
    echo "\$ascending = $ascending <br>";
    $ascending++;       //遞增
    echo "\$ascending++ = $ascending <br>";
    $ascending++;       //遞增
    echo "\$ascending++ = $ascending <br>";
    $decreasing = 2;
    echo "\$decreasing = $decreasing <br>";
    $decreasing--;      //遞減
    echo "\$decreasing-- = $decreasing <br>";
    $decreasing--;      //遞減
    echo "\$decreasing-- = $decreasing <br>"
?>

執行結果

$ascending= 3
$ascending++= 4
$ascending++=5
$decreasing = 2
$decreasing--= 1
$decreasing--= 0

 

 

3.指定運算子與複合運算子

指定運算子[ = ] 即是指定數值或運算式給某一變數,換句話說,我們可以用指定運算子來改變變數的值。指定運算子可以配合算術運算子來建立複合運算子,以有效簡化運算式,如下表所示:

運算子意義範例運算拆解
=指定數值到變數內$a=10$a=10
+=變數與數值相加$a+=20$a=$a+20
-=變數與數值相減$a-=30$a=$a-30
*=變數與數值相乘$a*=40$a=$a*40
/=變數與數值相除$a/=50$a=$a/50
%=變數與數值相取餘數$a%=60$a=4a%60
.=變數與字串串接$a.=70$a=$a.70
<<=左移 x 位元$a<<=1$a=$a<<1
>>=右移 x 位元$a>>=2$a=$a>>2
&=相互位元 and 運算$a&=$b$a=$a & $b
|=相互位元 or 運算$a |=$b$a=$a | $b
^=相互位元  xor 運算$a^=$b$a=$a ^ $b

 

程式說明

<?php
    $number = 3;            //指定數值到變數內
    echo "\$number = $number <br>";
    $number += 4;           //數字相加
    echo "\$number += 4 --> \$number = $number <br>";
    $number <<= 2;          //左移2位元
    echo "$number <<=2 --> \$number = $number <br>";
    $number &= 3;           //相互位元and運算
    echo "|$number &= 3 --> \$number = $number <br>";
    $number .= "~Hello";    //串接字串
    echo "\$number .= \"~Hello\"--> \$number = $number <br>";
?>

執行結果

$number=3
$number +=4 --> $number= 7
$number <<=2 -->$number=28
$number &=3 --> $number= 0
$number .="~Hello" -->$number=0~Hello

 

 

4. 比較運算子

比較運算子用於對兩運算元進行比較判斷,通常會與條件敘述配合使用,可依據不同情況執行不同運算式。常用的必較運算子如下表所示:

運算子意義範例($a=3,$b=5)運算結果
= =等於$a= = $bfalse
= = =全等於$a= = = $bfalse
!=不等於$a!=$btrue
<>不等於$a<>$btrue
!==非等於$a!==$btrue
>大於$a>$bfalse
<小於$a<$btrue
>=大於等於$a>=$bfalse
<=小於等於$a<=$Btrue

 

程式說明

<?php
$number1 = 3;   $number2 = 5;
    if ($number1 == $number2) {
        echo "\$number1 == \$number2 成立 <br>";    
    }else {
        echo "\$number1 == \$number2 不成立 <br>";
    }
    if ($number1 !== $number2) {
        echo "\$number1 !== \$number2 成立 <br>";    
    }else {
        echo "\$number1 !== \$number2 不成立 <br>";
    }
    if ($number1 >= $number2) {
        echo "\$number1 >= \$number2 成立 <br>";
    }else {
        echo "\$number1 >= \$number2 不成立 <br>";
    }
?>

執行結果

$number1 == $number2 不成立
$number1 !== $number2 成立
$number1 >= $number2 不成立

 

 

5. 邏輯運算子

邏輯運算子即是判斷其兩個變數、常數或運算式的布林直。常用的邏輯運算子如下表所示:

運算子意義範例($a=true $b=false)運算結果
&&(and)條件 and 運算$a && $b ($a and $b)false
||(or)條件 or 運算$a || $b ($a or $b)true
!(not)條件 not 運算!$afalse
xor條件 xor 運算$a xor $btrue

&&運算子只有當兩個運算元皆為true的情況下,其運算結果才為true

|| 運算子只要兩運算元其中之一為true,其運算結果就是true

! 運算子為一元運算子,功用為將該運算元做真假反轉

xor 運算子當兩運算元相異時,其運算結果才為true

 

程式說明

<?php
    $boolean1 = true; $boolean2 = false;
    if ($boolean1 && $boolean2) {
        echo "\$boolean1 && \$boolean2 成立 <br>";
    }else {
        echo "\$boolean1 && \$boolean2 不成立 <br>";
    }
    if ($boolean1 || $boolean2) {
        echo "\$boolean1 || \$boolean2 成立 <br>";
    }else {
        echo "\$boolean1 || \$boolean2 不成立 <br>";
    }
    if ($boolean1 xor $boolean2) {
        echo "\$boolean1 xor \$boolean2 成立 <br>";
    }else {
        echo "\$boolean1 xor \$boolean2 不成立 <br>";
    }
?>

執行結果

$boolean1 && $boolean2 不成立
$boolean1 || $boolean2 成立
$boolean1 xor $boolean2 成立

 

 

6. 位元運算子

位元運算子即是進行二位元運算。舉例來說,$a=6 , $b=3

運算子意義範例運算結果
&位元 AND 運算$a&$b2
|位元 OR 運算$a|$b7
^位元 XOR 運算$a^$b5
~位元 NOT 運算~$a-7
<<位元左移$a<<224
>>位元右移$a>>13

 

程式說明

<?php
    $number1 = 6; $number2 = 3;
    echo "\$number1 & \$number2 = ";
    echo ($number1 & $number2);          //AND運算
    echo "<br>";
    echo "\$number1 | \$number2 = ";
    echo ($number1 | $number2);          //OR運算
    echo "<br>";
    echo "\$number1 ^ \$number2 = ";
    echo ($number1 ^ $number2);          //XOR運算
    echo "<br>";
    echo "~\$number1 = ";
    echo ~$number1;                      //NOT運算
    echo "<br>";
    echo "\$number1 << \$number2 = ";
    echo ($number1 << $number2);         //左移
    echo "<br>";
    echo "\$number1 >> \$number2 = ";
    echo ($number1 >> $number2);         //右移
?>

執行結果

$number1 & $number2 = 2
$number1 | $number2 = 7
$number1 ^ $number2 = 5
~$number1 = -7
$number1 << $number2 = 48
$number1 >> $number2 = 0

 

 

7.  字串連接運算子

字串連接運算子即是用來做字連結使用。

運算子意義範例運算結果
.字串連接"AB"."CD""ABCD"

 

程式說明:

<?php
    echo "Hello"."World"."!";     //字串連接
?>

執行結果

Hello World!

 

 

8. 運算子優先順序

PHP上的運算子非常多種,為了確保在有多個運算子的運算式能夠得到相同的結果,運算子便有所謂的計算優先順序。就如同[先乘除後加減] 的規則一般。下列表格說明PHP的運算子的優先順序

優先運算子說明
()括號
! 、~、 ++、 --邏輯與位元NOT運算、遞增遞減運算
*  、/ 、 %乘法、除法、取餘數運算
+、 -加法、減法、字串連接運算
<< 、 >>位元左移、位元右移運算
> 、 >= 、 < 、 <=大於、大於等於、小於、小於等於運算
== 、  != 、 ===等於、不等於、全等於運算
& 、 | 、  ^ 、  ~位元AND、OR、XOR、NOT運算
&& 、 ||邏輯 AND、OR運算
=指定運算
網頁技術
首頁  >  網頁技術目錄  >  PHP的運算子

PHP的運算子

2021/8/5 , 由 Wanding 編寫發布

運算式由運算元和運算子組成。運算元是常數、變數或函數;而運算子就是運算符號,如+ - * /等。

以一條指定運算式給變數的程式敘述來說明,如下列:

運算式

 

在PHP程式語法中,一些計算和判斷會常常用到,所以一定會用到運算子計算。運算子分成下列幾種,接下來分別介紹:

 

1. 算術運算子

就是一般熟悉的加減乘除運算,如下表:

運算子意義範例運算結果
+加法4+913
-減法15-78
*乘法5*1260
/除法9/33
%取餘數66%51

 

程式說明

<?php
    $addition = 7+3;             //加法
    $subtraction = 7-3;          //減法
    $multiplication = 7*3;       //乘法
    $division = 7/3;             //除法
    $remainder = 7%3             //取餘數

    echo "\$addition = $addition <br>";
    echo "\$subtraction = $subtraction <br>";
    echo "\$multiplication = $multiplication <br>";
    echo "\$division = $division <br>";
    echo "\$remainder = $remainder";
?>

執行結果

$addition = 10
$subtraction = 4
$multiplication = 2.3333333333333
$remainder = 1

 

 

2. 遞增與遞減運算子

遞增與遞減運算子即是一個變數的值會隨著執行次數持續加1或減1,如下表所示:

運算子意義範例($a=6)運算結果
++遞增$a++$a=7
--遞減$a--$a=5

 

程式說明

<?php
    $ascending = 3;
    echo "\$ascending = $ascending <br>";
    $ascending++;       //遞增
    echo "\$ascending++ = $ascending <br>";
    $ascending++;       //遞增
    echo "\$ascending++ = $ascending <br>";
    $decreasing = 2;
    echo "\$decreasing = $decreasing <br>";
    $decreasing--;      //遞減
    echo "\$decreasing-- = $decreasing <br>";
    $decreasing--;      //遞減
    echo "\$decreasing-- = $decreasing <br>"
?>

執行結果

$ascending= 3
$ascending++= 4
$ascending++=5
$decreasing = 2
$decreasing--= 1
$decreasing--= 0

 

 

3.指定運算子與複合運算子

指定運算子[ = ] 即是指定數值或運算式給某一變數,換句話說,我們可以用指定運算子來改變變數的值。指定運算子可以配合算術運算子來建立複合運算子,以有效簡化運算式,如下表所示:

運算子意義範例運算拆解
=指定數值到變數內$a=10$a=10
+=變數與數值相加$a+=20$a=$a+20
-=變數與數值相減$a-=30$a=$a-30
*=變數與數值相乘$a*=40$a=$a*40
/=變數與數值相除$a/=50$a=$a/50
%=變數與數值相取餘數$a%=60$a=4a%60
.=變數與字串串接$a.=70$a=$a.70
<<=左移 x 位元$a<<=1$a=$a<<1
>>=右移 x 位元$a>>=2$a=$a>>2
&=相互位元 and 運算$a&=$b$a=$a & $b
|=相互位元 or 運算$a |=$b$a=$a | $b
^=相互位元  xor 運算$a^=$b$a=$a ^ $b

 

程式說明

<?php
    $number = 3;            //指定數值到變數內
    echo "\$number = $number <br>";
    $number += 4;           //數字相加
    echo "\$number += 4 --> \$number = $number <br>";
    $number <<= 2;          //左移2位元
    echo "$number <<=2 --> \$number = $number <br>";
    $number &= 3;           //相互位元and運算
    echo "|$number &= 3 --> \$number = $number <br>";
    $number .= "~Hello";    //串接字串
    echo "\$number .= \"~Hello\"--> \$number = $number <br>";
?>

執行結果

$number=3
$number +=4 --> $number= 7
$number <<=2 -->$number=28
$number &=3 --> $number= 0
$number .="~Hello" -->$number=0~Hello

 

 

4. 比較運算子

比較運算子用於對兩運算元進行比較判斷,通常會與條件敘述配合使用,可依據不同情況執行不同運算式。常用的必較運算子如下表所示:

運算子意義範例($a=3,$b=5)運算結果
= =等於$a= = $bfalse
= = =全等於$a= = = $bfalse
!=不等於$a!=$btrue
<>不等於$a<>$btrue
!==非等於$a!==$btrue
>大於$a>$bfalse
<小於$a<$btrue
>=大於等於$a>=$bfalse
<=小於等於$a<=$Btrue

 

程式說明

<?php
$number1 = 3;   $number2 = 5;
    if ($number1 == $number2) {
        echo "\$number1 == \$number2 成立 <br>";    
    }else {
        echo "\$number1 == \$number2 不成立 <br>";
    }
    if ($number1 !== $number2) {
        echo "\$number1 !== \$number2 成立 <br>";    
    }else {
        echo "\$number1 !== \$number2 不成立 <br>";
    }
    if ($number1 >= $number2) {
        echo "\$number1 >= \$number2 成立 <br>";
    }else {
        echo "\$number1 >= \$number2 不成立 <br>";
    }
?>

執行結果

$number1 == $number2 不成立
$number1 !== $number2 成立
$number1 >= $number2 不成立

 

 

5. 邏輯運算子

邏輯運算子即是判斷其兩個變數、常數或運算式的布林直。常用的邏輯運算子如下表所示:

運算子意義範例($a=true $b=false)運算結果
&&(and)條件 and 運算$a && $b ($a and $b)false
||(or)條件 or 運算$a || $b ($a or $b)true
!(not)條件 not 運算!$afalse
xor條件 xor 運算$a xor $btrue

&&運算子只有當兩個運算元皆為true的情況下,其運算結果才為true

|| 運算子只要兩運算元其中之一為true,其運算結果就是true

! 運算子為一元運算子,功用為將該運算元做真假反轉

xor 運算子當兩運算元相異時,其運算結果才為true

 

程式說明

<?php
    $boolean1 = true; $boolean2 = false;
    if ($boolean1 && $boolean2) {
        echo "\$boolean1 && \$boolean2 成立 <br>";
    }else {
        echo "\$boolean1 && \$boolean2 不成立 <br>";
    }
    if ($boolean1 || $boolean2) {
        echo "\$boolean1 || \$boolean2 成立 <br>";
    }else {
        echo "\$boolean1 || \$boolean2 不成立 <br>";
    }
    if ($boolean1 xor $boolean2) {
        echo "\$boolean1 xor \$boolean2 成立 <br>";
    }else {
        echo "\$boolean1 xor \$boolean2 不成立 <br>";
    }
?>

執行結果

$boolean1 && $boolean2 不成立
$boolean1 || $boolean2 成立
$boolean1 xor $boolean2 成立

 

 

6. 位元運算子

位元運算子即是進行二位元運算。舉例來說,$a=6 , $b=3

運算子意義範例運算結果
&位元 AND 運算$a&$b2
|位元 OR 運算$a|$b7
^位元 XOR 運算$a^$b5
~位元 NOT 運算~$a-7
<<位元左移$a<<224
>>位元右移$a>>13

 

程式說明

<?php
    $number1 = 6; $number2 = 3;
    echo "\$number1 & \$number2 = ";
    echo ($number1 & $number2);          //AND運算
    echo "<br>";
    echo "\$number1 | \$number2 = ";
    echo ($number1 | $number2);          //OR運算
    echo "<br>";
    echo "\$number1 ^ \$number2 = ";
    echo ($number1 ^ $number2);          //XOR運算
    echo "<br>";
    echo "~\$number1 = ";
    echo ~$number1;                      //NOT運算
    echo "<br>";
    echo "\$number1 << \$number2 = ";
    echo ($number1 << $number2);         //左移
    echo "<br>";
    echo "\$number1 >> \$number2 = ";
    echo ($number1 >> $number2);         //右移
?>

執行結果

$number1 & $number2 = 2
$number1 | $number2 = 7
$number1 ^ $number2 = 5
~$number1 = -7
$number1 << $number2 = 48
$number1 >> $number2 = 0

 

 

7.  字串連接運算子

字串連接運算子即是用來做字連結使用。

運算子意義範例運算結果
.字串連接"AB"."CD""ABCD"

 

程式說明:

<?php
    echo "Hello"."World"."!";     //字串連接
?>

執行結果

Hello World!

 

 

8. 運算子優先順序

PHP上的運算子非常多種,為了確保在有多個運算子的運算式能夠得到相同的結果,運算子便有所謂的計算優先順序。就如同[先乘除後加減] 的規則一般。下列表格說明PHP的運算子的優先順序

優先運算子說明
()括號
! 、~、 ++、 --邏輯與位元NOT運算、遞增遞減運算
*  、/ 、 %乘法、除法、取餘數運算
+、 -加法、減法、字串連接運算
<< 、 >>位元左移、位元右移運算
> 、 >= 、 < 、 <=大於、大於等於、小於、小於等於運算
== 、  != 、 ===等於、不等於、全等於運算
& 、 | 、  ^ 、  ~位元AND、OR、XOR、NOT運算
&& 、 ||邏輯 AND、OR運算
=指定運算
返回目錄
網頁技術
首頁  >  網頁技術目錄  >  PHP的變數與常數

PHP的變數與常數

2021/7/31 , 由 Wanding 編寫發布
分類:

變數

變數是用來暫存資料的工具,使用時會在變數名稱前面加上$符號,通常引用的變數還沒設定數值前為空值,若要設定數值則可以用 "=" 符號來設定。

PHP是一個非強制檢查型別的程式語言(weakly typed language),所以變數在引用時並不需要事先宣告資料型態才能使用。資料型態會自動依變數的內容來決定,這是與其他高階語言不同之處。

變數設定與設定方法:

<?php
      $name;             //宣告變數name,值為空值
      $number=17;        //宣告變數number,值設定為17
?>

 

變數的名稱命名,有些規範需要注意:

  1. 變數名稱的字首必須是英文大小寫字母(A~Z 或 a~z) 或是底線( _ )
  2. 變數名稱第二個字元後可以是(1)英文大小寫字母 (2)數字0~9 (3)底線
  3. 變數名稱長度沒有限制
  4. 無法使用PHP程式語言保留字

 

變數宣告和設定數值的同時,我們必須了解該變數的範圍。所謂的變數範圍,即是該變數在整個程式中能夠被使用或看到的範圍,通常可以分為下面4種變數:

 

1. 區域變數

區域變數即是在特定區域範圍內才能使用的變數,不能在其他的函式中被使用。此外,在函式中的變數若是區域變數,也不能在其他區域中使用。下列例子說明:函數外的變數$number1和函數中的變數$number2,都是區域變數,它們只能在自己所屬的區域內使用,跨到別的區域就無法使用。

例子如下

<?php
    $number1= 20;
    function local()                           //自訂local函數
    {
        $number2= 30;
        echo "函數中\$number1 = $number1";     //印出變數則出現錯誤
        echo "<br>";
        echo "函數中\$number2 = $number2";
        echo "<br>";
    }
    local();                                   //呼叫local函數

    echo "函數外\$number1 = $number1";
    echo "<br>";
    echo "函數外\$number2 = $number2";          //印出變數則出現錯誤
?> 

執行結果:

函數中$number1=
函數中$number2=30
函數外$number1=20
函數外$number2=

 

2. 全域變數

全域變數即是在任何函數範圍內皆可使用該變數。在PHP中並非像其他程式語言一樣是在變數宣告時宣告該變數為全域變數,反而是在函數中利用全域的指令來引用在該函數外的變數。全域變數的使用方法如下:

  1. 在該函數中將會使用到的函式外的變數宣告為global。
  2. 利用GLOBAL陣列。

例子說明1 (宣告為global)

<?php
    $number = 20;
    function local()                          //自訂local函數
    {
        global $number;                       //使用global
        echo "函數中\$number = $number";
        echo "<br>";
    }
    local();                                  //呼叫local函數
    echo "函數外\$number = $number";
?>

執行結果:

函數中$number=20
函數外$number=20

 

例子說明2 (GLOBALS陣列)

<?php
    $GLOBALS['a'] = 20;                         //使用GLOBALS陣列
    function local()                            //自訂local函數
    {
        echo "函數中\$number =". $GLOBALS['a'];
        echo "<br>";
    }
    local();                                    //呼叫local函數
    echo "函數外\$number =".$GLOBALS['a'];
?>

執行結果:

函數中$number=20
函數外$number=20

 

3. 靜態變數

靜態變數即是變數的值,不會因為離開函數而消失,靜態變數會保留最後使用或修改的資料。我們可以使用保留字static來將變數宣告為靜態變數。

例子說明

<?php
    function local()                            //自訂local函數
    {
        static $number = 0;                     //使用static
        $number = $number+1;                                  
        echo "函數中\$number = $number";
        echo "<br>"
    }
    local();                                    //呼叫local函數
    local();
    local();
?>

執行結果:

函數中$number=1
函數中$number=2
函數中$number=3

 

4. 動態變數

動態變數即是一種變數參照,透過某一種變數名稱來當作另一個變數的參照,使用上會用兩個錢字符號$$來使用動態變數。

例子說明

<?php
    $M = "Mcdonalds";                            //宣告M 變數
    $KFC = "Kentucky Fried Chicken";
    $store = "M"                                 //宣告store的內容為變數M 的名稱
    echo $$store;                                //使用動態變數
    echo "<br>";
    $store = "KFC";
    echo $$store;  
?>

執行結果

Mcdonalds
Kentucky Fried Chicken

 

5. 預設變數

預設變數就是與伺服器或使用者環境相關的系統變數

預設變數說明
$_SERVER儲存伺服器內或使用者環境的資訊陣列變數
$_POST儲存以POST方式傳入的陣列變數
$_GET儲存以GET方式傳入的陣列變數
$_COOKIE儲存以COOKIE方式註冊的陣列變數
$_SESSION儲存以SESSION方式註冊的陣列變數
$_FILES儲存以POST方式傳入檔案的陣列變數
$_REQUEST儲存以POST、GET、COOKIE、FILES方式傳入的陣列變數

 

 

常數

常數與變數剛好相反,它是定義一些無法改變數值內容。常數可以分為兩種,一種是內建常數,另一種是自訂常數。

內建常數即是系統內已定義的常數工具,主要是提供給程式開發者使用,通常名稱皆為大寫,以下是常見的內建常數:

內建常數說明
PHP_VERSIONPHP版本
PHP_OS執行PHP的系統
TRUE真值
FALSE假值
E_ERROR指到最近的錯誤,並中斷程式產生報告,值為1
E_WARNING指到最近的警告,不會中斷程式,值為2
E_PARSE分析語法錯誤之處,值為4
E_NOTICE用於不尋常但不一定是錯誤之處,值為8

除了系統內建常數外,我們也可以自定常用的常數,像是定義圓周率等於3.1415,或者是一天小時數等於24...等方式,定義的方法可以透過下列格式來做定義:

define(常數名稱, 常數值);

例子說明

<?php
    define("PI",3.1415);                //定義圓周率
    echo $round_area = 3 * 3 * PI;      //計算圓面積
?>

執行結果

28.2735

網頁技術
首頁  >  網頁技術目錄  >  PHP的變數與常數

PHP的變數與常數

2021/7/31 , 由 Wanding 編寫發布

變數

變數是用來暫存資料的工具,使用時會在變數名稱前面加上$符號,通常引用的變數還沒設定數值前為空值,若要設定數值則可以用 "=" 符號來設定。

PHP是一個非強制檢查型別的程式語言(weakly typed language),所以變數在引用時並不需要事先宣告資料型態才能使用。資料型態會自動依變數的內容來決定,這是與其他高階語言不同之處。

變數設定與設定方法:

<?php
      $name;             //宣告變數name,值為空值
      $number=17;        //宣告變數number,值設定為17
?>

 

變數的名稱命名,有些規範需要注意:

  1. 變數名稱的字首必須是英文大小寫字母(A~Z 或 a~z) 或是底線( _ )
  2. 變數名稱第二個字元後可以是(1)英文大小寫字母 (2)數字0~9 (3)底線
  3. 變數名稱長度沒有限制
  4. 無法使用PHP程式語言保留字

 

變數宣告和設定數值的同時,我們必須了解該變數的範圍。所謂的變數範圍,即是該變數在整個程式中能夠被使用或看到的範圍,通常可以分為下面4種變數:

 

1. 區域變數

區域變數即是在特定區域範圍內才能使用的變數,不能在其他的函式中被使用。此外,在函式中的變數若是區域變數,也不能在其他區域中使用。下列例子說明:函數外的變數$number1和函數中的變數$number2,都是區域變數,它們只能在自己所屬的區域內使用,跨到別的區域就無法使用。

例子如下

<?php
    $number1= 20;
    function local()                           //自訂local函數
    {
        $number2= 30;
        echo "函數中\$number1 = $number1";     //印出變數則出現錯誤
        echo "<br>";
        echo "函數中\$number2 = $number2";
        echo "<br>";
    }
    local();                                   //呼叫local函數

    echo "函數外\$number1 = $number1";
    echo "<br>";
    echo "函數外\$number2 = $number2";          //印出變數則出現錯誤
?> 

執行結果:

函數中$number1=
函數中$number2=30
函數外$number1=20
函數外$number2=

 

2. 全域變數

全域變數即是在任何函數範圍內皆可使用該變數。在PHP中並非像其他程式語言一樣是在變數宣告時宣告該變數為全域變數,反而是在函數中利用全域的指令來引用在該函數外的變數。全域變數的使用方法如下:

  1. 在該函數中將會使用到的函式外的變數宣告為global。
  2. 利用GLOBAL陣列。

例子說明1 (宣告為global)

<?php
    $number = 20;
    function local()                          //自訂local函數
    {
        global $number;                       //使用global
        echo "函數中\$number = $number";
        echo "<br>";
    }
    local();                                  //呼叫local函數
    echo "函數外\$number = $number";
?>

執行結果:

函數中$number=20
函數外$number=20

 

例子說明2 (GLOBALS陣列)

<?php
    $GLOBALS['a'] = 20;                         //使用GLOBALS陣列
    function local()                            //自訂local函數
    {
        echo "函數中\$number =". $GLOBALS['a'];
        echo "<br>";
    }
    local();                                    //呼叫local函數
    echo "函數外\$number =".$GLOBALS['a'];
?>

執行結果:

函數中$number=20
函數外$number=20

 

3. 靜態變數

靜態變數即是變數的值,不會因為離開函數而消失,靜態變數會保留最後使用或修改的資料。我們可以使用保留字static來將變數宣告為靜態變數。

例子說明

<?php
    function local()                            //自訂local函數
    {
        static $number = 0;                     //使用static
        $number = $number+1;                                  
        echo "函數中\$number = $number";
        echo "<br>"
    }
    local();                                    //呼叫local函數
    local();
    local();
?>

執行結果:

函數中$number=1
函數中$number=2
函數中$number=3

 

4. 動態變數

動態變數即是一種變數參照,透過某一種變數名稱來當作另一個變數的參照,使用上會用兩個錢字符號$$來使用動態變數。

例子說明

<?php
    $M = "Mcdonalds";                            //宣告M 變數
    $KFC = "Kentucky Fried Chicken";
    $store = "M"                                 //宣告store的內容為變數M 的名稱
    echo $$store;                                //使用動態變數
    echo "<br>";
    $store = "KFC";
    echo $$store;  
?>

執行結果

Mcdonalds
Kentucky Fried Chicken

 

5. 預設變數

預設變數就是與伺服器或使用者環境相關的系統變數

預設變數說明
$_SERVER儲存伺服器內或使用者環境的資訊陣列變數
$_POST儲存以POST方式傳入的陣列變數
$_GET儲存以GET方式傳入的陣列變數
$_COOKIE儲存以COOKIE方式註冊的陣列變數
$_SESSION儲存以SESSION方式註冊的陣列變數
$_FILES儲存以POST方式傳入檔案的陣列變數
$_REQUEST儲存以POST、GET、COOKIE、FILES方式傳入的陣列變數

 

 

常數

常數與變數剛好相反,它是定義一些無法改變數值內容。常數可以分為兩種,一種是內建常數,另一種是自訂常數。

內建常數即是系統內已定義的常數工具,主要是提供給程式開發者使用,通常名稱皆為大寫,以下是常見的內建常數:

內建常數說明
PHP_VERSIONPHP版本
PHP_OS執行PHP的系統
TRUE真值
FALSE假值
E_ERROR指到最近的錯誤,並中斷程式產生報告,值為1
E_WARNING指到最近的警告,不會中斷程式,值為2
E_PARSE分析語法錯誤之處,值為4
E_NOTICE用於不尋常但不一定是錯誤之處,值為8

除了系統內建常數外,我們也可以自定常用的常數,像是定義圓周率等於3.1415,或者是一天小時數等於24...等方式,定義的方法可以透過下列格式來做定義:

define(常數名稱, 常數值);

例子說明

<?php
    define("PI",3.1415);                //定義圓周率
    echo $round_area = 3 * 3 * PI;      //計算圓面積
?>

執行結果

28.2735

返回目錄
網頁技術
首頁  >  網頁技術目錄  >  PHP的資料型態

PHP的資料型態

2021/7/27 , 由 Wanding 編寫發布
分類:

我們的電腦運作時,存放資料的地方就是記憶體,記憶體的資料都是由0和1所組成。因此,記憶體中的0 和1 組成資料是代表什麼意義,那就得看程式如何定義。可以把它定義為整數、文字、或字元。而電腦如何定義資料的方式就叫做資料型態。也就是說,資料型態是資料表示的狀態。在一般程式中,資料型態通常會與變數一起宣告使用。在PHP中,資料型態可以分為下列幾種:

整數 (integer)

整數即是不含小數點的數值,可以為正負整數,範圍為 -2,147,483,648 至 2,147,483,647,其數值可以用10進位表示外,也能使用八進位或十六進位表示。若要使用八進位的數值,只需要在數值前面加一個0,若要使用十六進位,只需要在數值前面加上0x

<?php 
    $number1=123 ;    //變數number1為正整數123
    echo $number1;
    echo "<BR>";      //輸出HTML斷行
    $number2=-456;    //變數number2為負整數-456
    echo $number2;
    echo "<BR>";      //輸出HTML斷行
    $number3=012;     //變數number3為八進位12,相當於十進位的10
    echo $nimber3;
    echo "<BR>";      //輸出HTML斷行
    $number4=0xF;     //變數number4為十六進位F,相當於十進位的15
    echo $nimber4;
    echo "<BR>";      //輸出HTML斷行
?>

執行結果如下:

123
-456
10
15

 

浮點數 (floating point number)

浮點數即是含有小數的數值,也可以為正負的浮點數,其範圍為 1.7E-308~1.7E+308,其數值可以使用指數的方式來表示。

<?php
     $number1=12.34;        //變數number1為正浮點數12.34
     echo $number1;
     echo "<br>";           //輸出HTML斷行
     $number2=-12.34;       //變數number2為負浮點數-12.34
     echo $number2;
     echo "<br>";           //輸出HTML斷行
     $number3=123.4567e3;   //變數number3為123.4567e3,相當於123456.7
     echo $number3;
     echo "<br>";           //輸出HTML斷行
     $number4=123.4567e-2;  //變數number4為123.4567e-2,相當於1.234567
     echo $number4;
     echo "<br>";           //輸出HTML斷行
?>

執行結果如下:

12.34
-12.34
123456.7
1.234567

 

字串(string)

字串即是一串文字資料,使用時必須使用單引號(')或雙引號(")來包住以表示其為文字內容,當然其代表的意義也不相同。若使用雙引號包住含有變數的字串時,該變數會被[置入],但若是使用單引號來包住含有變數的字串,則會直接顯示該字串。

<?php
    $name="Mary";             //設定變數name為Mary
    $str1="Hello! $name.";    //設定變數str1為Hello! $name,並使用雙引號
    echo $str1;               //顯示變數str1的內容
    echo "<br>";
    $str2='Hello! $name.';    //設定變數str2為Hello! $name,並使用單引號
    echo $str2;               //顯示變數str2內容
?>

執行結果如下:

Hello!  Mary.
Hello!  $name.

在PHP字串中,如果要使用一些特殊字元,例如單引號或雙引號,這些特殊字元在被使用於字串內時,必須加入反斜線的跳脫字元,才能在字串中顯示出特殊字元與功用,如下表:

特殊字元用途
\'表示'符號
\"表示"符號
\$表示$符號
\\表示\符號
\n表示換行
\t表示定位點
\r表示游標至列首

布林(boolean)

布林即是真假值,其值可以為true(真)或false(假)兩種,通常會與設定的條件判斷一起使用,以判斷條件是否成立。

<?php
    $boolean1=true;                        //變數boolean1為真
    $boolean2=false;                       //變數boolean2為假
    if ($boolean1){                        //判斷變數boolean1是否為真
         echo "變數boolean1為真<br>";
    }else {
         echo "變數boolean1為假<br>";
    }
    if ($boolean2){
         echo "變數boolean2為真<br>";       //判斷變數boolean2是否為真
    }else {
         echo "變數boolean2為假<br>";
?>

執行結果:

變數boolean1為真
變數boolean2為假

物件(objects)

物件即是透過類別(class)產生一個新的物件變數。所謂的類別即是一種可以自訂的建構,建構內包含相關的變數和運作上所使用的函式,所產生的物件可以設定類別內的相關變數與執行類別內的使用函式。

陣列(arrays)

陣列即是一種用來存放多個相同資料類型的變數。

資源(resources)

資源是指變數內容是一個外部資源,可以包括是圖檔、文件、資料庫連線...等。

空值(null)

空值即是指變數內無任何資料或指向任何資料,會以null 來表示空值。

<?php
    $number1= 30;
    echo $number1;
    echo "<br>";
    $number2= 50;
    echo $number2;
    echo "<br>";

    $number1= null;      //變數$number1為空值
    echo $number1;
    echo "<br>";
    unset ($number2);    //使用函式unset()將變數$number2刪除
    echo $number2;       //印出變數則出現錯誤
    echo "<br>";
?>

執行結果:

30
50

轉換型態

當變數型態在使用過程中需要轉換型態,我們可以透過以下兩種方式來進行變數型態轉換:

1. 強制轉換

以型態強制轉換,即是在變數或運算子前加上指定的資料型態強制進行轉換,如下:

<?php
    $number= 30.56;             //變數number為浮點數型態
    echo $number;
    echo "<br>";
    $number= (int)$number;      //強制轉換變數number為整數型態
    echo $number;
?>

執行結果:

30.56
30

2. 使用settype函式

<?php
    $number= 30.56;             //變數number為浮點數型態
    echo $number;
    echo "<br>";
    settype($number, "int");    //使用settype函式轉換變數number為整數型態
    echo $number;
?>

執行結果:

30.56
30

回目錄

網頁技術
首頁  >  網頁技術目錄  >  PHP的資料型態

PHP的資料型態

2021/7/27 , 由 Wanding 編寫發布

我們的電腦運作時,存放資料的地方就是記憶體,記憶體的資料都是由0和1所組成。因此,記憶體中的0 和1 組成資料是代表什麼意義,那就得看程式如何定義。可以把它定義為整數、文字、或字元。而電腦如何定義資料的方式就叫做資料型態。也就是說,資料型態是資料表示的狀態。在一般程式中,資料型態通常會與變數一起宣告使用。在PHP中,資料型態可以分為下列幾種:

整數 (integer)

整數即是不含小數點的數值,可以為正負整數,範圍為 -2,147,483,648 至 2,147,483,647,其數值可以用10進位表示外,也能使用八進位或十六進位表示。若要使用八進位的數值,只需要在數值前面加一個0,若要使用十六進位,只需要在數值前面加上0x

<?php 
    $number1=123 ;    //變數number1為正整數123
    echo $number1;
    echo "<BR>";      //輸出HTML斷行
    $number2=-456;    //變數number2為負整數-456
    echo $number2;
    echo "<BR>";      //輸出HTML斷行
    $number3=012;     //變數number3為八進位12,相當於十進位的10
    echo $nimber3;
    echo "<BR>";      //輸出HTML斷行
    $number4=0xF;     //變數number4為十六進位F,相當於十進位的15
    echo $nimber4;
    echo "<BR>";      //輸出HTML斷行
?>

執行結果如下:

123
-456
10
15

 

浮點數 (floating point number)

浮點數即是含有小數的數值,也可以為正負的浮點數,其範圍為 1.7E-308~1.7E+308,其數值可以使用指數的方式來表示。

<?php
     $number1=12.34;        //變數number1為正浮點數12.34
     echo $number1;
     echo "<br>";           //輸出HTML斷行
     $number2=-12.34;       //變數number2為負浮點數-12.34
     echo $number2;
     echo "<br>";           //輸出HTML斷行
     $number3=123.4567e3;   //變數number3為123.4567e3,相當於123456.7
     echo $number3;
     echo "<br>";           //輸出HTML斷行
     $number4=123.4567e-2;  //變數number4為123.4567e-2,相當於1.234567
     echo $number4;
     echo "<br>";           //輸出HTML斷行
?>

執行結果如下:

12.34
-12.34
123456.7
1.234567

 

字串(string)

字串即是一串文字資料,使用時必須使用單引號(')或雙引號(")來包住以表示其為文字內容,當然其代表的意義也不相同。若使用雙引號包住含有變數的字串時,該變數會被[置入],但若是使用單引號來包住含有變數的字串,則會直接顯示該字串。

<?php
    $name="Mary";             //設定變數name為Mary
    $str1="Hello! $name.";    //設定變數str1為Hello! $name,並使用雙引號
    echo $str1;               //顯示變數str1的內容
    echo "<br>";
    $str2='Hello! $name.';    //設定變數str2為Hello! $name,並使用單引號
    echo $str2;               //顯示變數str2內容
?>

執行結果如下:

Hello!  Mary.
Hello!  $name.

在PHP字串中,如果要使用一些特殊字元,例如單引號或雙引號,這些特殊字元在被使用於字串內時,必須加入反斜線的跳脫字元,才能在字串中顯示出特殊字元與功用,如下表:

特殊字元用途
\'表示'符號
\"表示"符號
\$表示$符號
\\表示\符號
\n表示換行
\t表示定位點
\r表示游標至列首

布林(boolean)

布林即是真假值,其值可以為true(真)或false(假)兩種,通常會與設定的條件判斷一起使用,以判斷條件是否成立。

<?php
    $boolean1=true;                        //變數boolean1為真
    $boolean2=false;                       //變數boolean2為假
    if ($boolean1){                        //判斷變數boolean1是否為真
         echo "變數boolean1為真<br>";
    }else {
         echo "變數boolean1為假<br>";
    }
    if ($boolean2){
         echo "變數boolean2為真<br>";       //判斷變數boolean2是否為真
    }else {
         echo "變數boolean2為假<br>";
?>

執行結果:

變數boolean1為真
變數boolean2為假

物件(objects)

物件即是透過類別(class)產生一個新的物件變數。所謂的類別即是一種可以自訂的建構,建構內包含相關的變數和運作上所使用的函式,所產生的物件可以設定類別內的相關變數與執行類別內的使用函式。

陣列(arrays)

陣列即是一種用來存放多個相同資料類型的變數。

資源(resources)

資源是指變數內容是一個外部資源,可以包括是圖檔、文件、資料庫連線...等。

空值(null)

空值即是指變數內無任何資料或指向任何資料,會以null 來表示空值。

<?php
    $number1= 30;
    echo $number1;
    echo "<br>";
    $number2= 50;
    echo $number2;
    echo "<br>";

    $number1= null;      //變數$number1為空值
    echo $number1;
    echo "<br>";
    unset ($number2);    //使用函式unset()將變數$number2刪除
    echo $number2;       //印出變數則出現錯誤
    echo "<br>";
?>

執行結果:

30
50

轉換型態

當變數型態在使用過程中需要轉換型態,我們可以透過以下兩種方式來進行變數型態轉換:

1. 強制轉換

以型態強制轉換,即是在變數或運算子前加上指定的資料型態強制進行轉換,如下:

<?php
    $number= 30.56;             //變數number為浮點數型態
    echo $number;
    echo "<br>";
    $number= (int)$number;      //強制轉換變數number為整數型態
    echo $number;
?>

執行結果:

30.56
30

2. 使用settype函式

<?php
    $number= 30.56;             //變數number為浮點數型態
    echo $number;
    echo "<br>";
    settype($number, "int");    //使用settype函式轉換變數number為整數型態
    echo $number;
?>

執行結果:

30.56
30

回目錄

返回目錄
網頁技術
首頁  >  網頁技術目錄  >  PHP的標籤、陳述式、註解...

PHP的標籤、陳述式、註解...

2021/7/18 , 由 Wanding 編寫發布
分類:

PHP標籤

PHP的程式碼是以<?php 為開頭,以?>結尾。這很像HTML的標籤,都是以小於(<)的符號開頭,以大於(>)的符號結尾。這些符號( <?php 與 ?>)都稱為PHP標籤。它們讓網頁伺服器知道PHP程式碼的開始與結束的地方。在這兩個標籤之內的所有文字都會被解譯為PHP。在這兩個標籤外的所有文字都會被視為HTML。

<?php
  echo '<p>Hello World !</p>';
?>

 

PHP標籤其實有兩種樣式,但是這兩種樣式都是等效的:

XML樣式

<?php
  echo '<p>Hello World !</p>';
?>

這是首選的標籤樣式。伺服器管理員無法將它關閉,所以它保證可以在所有的伺服器中有效運作。

 

短樣式

<?
  echo '<p>Hello World !</p>';
?>

這是另一種較簡單的寫法,但是不建議在準備發表的程式碼使用,在些許環境下無法動作。

 

PHP陳述式

我們可以在PHP開始與結束標籤之間加入PHP陳述式來通知解譯器要做些什麼事情。

<?php
  echo '<p>Hello World !</p>';
?>

使用echo結構會產生一個很簡單的結果,就是它會印出字串,將它傳給瀏覽器。echo陳述式的最後面結尾有一個分號,目的是用來分隔PHP的陳述式。忘記加上分號式很容易犯下的語法錯誤。

 

空白字元

換行、空格、tab等間距字元都是空白字元。瀏覽器會忽略HTML內的空白字元,PHP引擎也是會忽略空白字元。但是在編寫程式碼時就可以利用這個特性,使用空白或換行,讓程式碼看起來比較容易閱讀。

 

PHP註解

在程式碼之間,註解是協助人類閱讀程式的備註。註解可以用來解釋這一段腳本的目的,誰寫的,以及為什麼要採取這種編寫方式...。PHP通常都會有註解。而PHP解譯器會忽視註解中的所有文字。

//以下是註解 (單行註解)

/*以下是多行的註解
這是C樣式的多行註解
共有三行
*/

#以下是註解(殼層腳本樣式)

 

動態內容

使用PHP的主要原因,就是它可以提供動態的內容給網站使用者觀看。這是一個非常重要的應用,因為它可以依照使用者的需求,或隨著時間來改變內容,這會讓訪客願意持續返回網站。

<? php
   echo "<p>Order processed at";
   echo date ('H:i, js F Y');
   echo "</p>";
?>

這段程式中,PHP內建的date()函式會通知使用者,它的訂單被處理的日期和時間。

 

呼叫函式

date( ) 即為一般的函式呼叫格式。

PHP有廣泛的函式庫,可以讓人們在開發網頁應用程式時使用。而大多數的函式都需要傳入一些資料,也會回傳一些資料。

date ( ' H: i, js F Y')

  • H:24小時格式,前面零
  • i : 分,前面有零
  • j : 日期,前面沒有零
  • s: 後綴序數(th)
  • F: 完整月份名稱
  • Y: 年
網頁技術
首頁  >  網頁技術目錄  >  PHP的標籤、陳述式、註解...

PHP的標籤、陳述式、註解...

2021/7/18 , 由 Wanding 編寫發布

PHP標籤

PHP的程式碼是以<?php 為開頭,以?>結尾。這很像HTML的標籤,都是以小於(<)的符號開頭,以大於(>)的符號結尾。這些符號( <?php 與 ?>)都稱為PHP標籤。它們讓網頁伺服器知道PHP程式碼的開始與結束的地方。在這兩個標籤之內的所有文字都會被解譯為PHP。在這兩個標籤外的所有文字都會被視為HTML。

<?php
  echo '<p>Hello World !</p>';
?>

 

PHP標籤其實有兩種樣式,但是這兩種樣式都是等效的:

XML樣式

<?php
  echo '<p>Hello World !</p>';
?>

這是首選的標籤樣式。伺服器管理員無法將它關閉,所以它保證可以在所有的伺服器中有效運作。

 

短樣式

<?
  echo '<p>Hello World !</p>';
?>

這是另一種較簡單的寫法,但是不建議在準備發表的程式碼使用,在些許環境下無法動作。

 

PHP陳述式

我們可以在PHP開始與結束標籤之間加入PHP陳述式來通知解譯器要做些什麼事情。

<?php
  echo '<p>Hello World !</p>';
?>

使用echo結構會產生一個很簡單的結果,就是它會印出字串,將它傳給瀏覽器。echo陳述式的最後面結尾有一個分號,目的是用來分隔PHP的陳述式。忘記加上分號式很容易犯下的語法錯誤。

 

空白字元

換行、空格、tab等間距字元都是空白字元。瀏覽器會忽略HTML內的空白字元,PHP引擎也是會忽略空白字元。但是在編寫程式碼時就可以利用這個特性,使用空白或換行,讓程式碼看起來比較容易閱讀。

 

PHP註解

在程式碼之間,註解是協助人類閱讀程式的備註。註解可以用來解釋這一段腳本的目的,誰寫的,以及為什麼要採取這種編寫方式...。PHP通常都會有註解。而PHP解譯器會忽視註解中的所有文字。

//以下是註解 (單行註解)

/*以下是多行的註解
這是C樣式的多行註解
共有三行
*/

#以下是註解(殼層腳本樣式)

 

動態內容

使用PHP的主要原因,就是它可以提供動態的內容給網站使用者觀看。這是一個非常重要的應用,因為它可以依照使用者的需求,或隨著時間來改變內容,這會讓訪客願意持續返回網站。

<? php
   echo "<p>Order processed at";
   echo date ('H:i, js F Y');
   echo "</p>";
?>

這段程式中,PHP內建的date()函式會通知使用者,它的訂單被處理的日期和時間。

 

呼叫函式

date( ) 即為一般的函式呼叫格式。

PHP有廣泛的函式庫,可以讓人們在開發網頁應用程式時使用。而大多數的函式都需要傳入一些資料,也會回傳一些資料。

date ( ' H: i, js F Y')

  • H:24小時格式,前面零
  • i : 分,前面有零
  • j : 日期,前面沒有零
  • s: 後綴序數(th)
  • F: 完整月份名稱
  • Y: 年
返回目錄
Subscribe to PHP