PHP

變數與敘述

變數命名方式

有學習過任一個除了PHP以外的程式語言的同學,對於PHP的變數宣告一定會感到非常地奇怪,因為PHP的變數是以「$」符號作為開頭,後面才是一般變數的命名方式。以下是PHP變數使用的例子:

程式名稱:test01.php,計算身體質量指數BMI

<?php
$height = 1.74;
$weight = 64;
$bmi = $weight / ($height * $height);
echo "Your BMI is $bmi\n";
?>

由於程式碼本身是標準的文字檔案,因此任何的文字編輯器都可以用來編輯test01.php這個程式,就連記事本也都可以,但是當然你不會使用記事本來折磨自己吧。好用的程式碼編輯器有Sublime Text 2、NotePad++、以及PSPad等等,都可以在網路上免費下載使用。

上述程式之執行過程如下:

C:\Users\USER>type test01.php
<?php
$height = 1.74;
$weight = 64;
$bmi = $weight / ($height * $height);
echo "Your BMI is $bmi\n";?>
C:\Users\USER>php -q test01.php
Your BMI is 21.138855859427

‌我們先進入命令提示字元,之後利用type指令顯示出所有的程式內容,再以php -q test01.php來執行該程式,並得到結果。

指令敘述

由於PHP是基於C/C++語言的描述式語言,因此有非常多C語言的影子,最明顯的例子就是每一行敘述後面都要加上一個「;」號,如果你有使用C語言的經驗,相信這個特性對你來說就不會太陌生。

當然,如果在使用流程控制敘述的時候,有些情況下需要把一群指令敘述圈在一起執行的話,那麼大括號「{}」就是必要的區塊範圍標記了。

關於輸出資料

在test01.phptest01.php這個程式中我們看到了如何利用echo指令輸出計算的結果。有一個地方同學們可能會覺得很有趣,就是在輸出資料的那一行,也就是在 echo指令後面的那個字串中,我們把$bmi這個變數直接放到字串裡面,而輸出的時候,PHP直譯器自己會把$bmi這個變數的內容先代入之後再顯示出來,讓我們不用擔心還要另外在字串之後再指定變數才能夠取得資料的輸出結果,這也是在PHP程式中的一個特色。

下面這個例子可以更容易瞭解此種變數和字串內容混合輸出的方式:

程式名稱:test02.php

<?php
$a = 100;
$b = 340;
$sum = $a + $b;
echo "$a+$b=$sum";
?>

test02.php的執行結果為:

100+340=440

從上述的執行結果可以看到,3個變數在echo後面的字串中都被順利地以其內容來取代了。

如果你不打算字串的內容被以變數的內容加以渲染的話,可以把雙引號改為單引號就好囉。上述的程式在 echo 指令後面如果改為單引號的話:

程式名稱:test03.php

<?php
$a = 100;
$b = 340;
$sum = $a + $b;
echo '$a+$b=$sum';
?>

那麼執行的結果就會變成如下所示的樣子:

$a+$b=$sum

關於輸入資料

在完成了上述的BMI計算程式之後,同學們可能會想把它改寫成可以接受使用者的輸入資料,再依據輸入的資料來計算並輸出的例子。在傳統的程式語言,要輸入資料是非常簡單的事情,C語言可以使用scanf或是gets,在Python語言中則是執行input即可,但是在PHP中並沒有對應的指令。

為什麼?

因為PHP主要的角色是作為伺服器端的網頁語言,因此執行它的人基本上不會是坐在伺服器前面的使用者,而是坐在個人電腦前面使用瀏覽器的使用者,透過瀏覽器向伺服器提出請求之後,PHP才能夠得到執行的機會,也因此,在這種情況下,PHP程式取得的資料都是來自於網頁的請求而且是由伺服器所轉交過來的。

基於上述的情況,以PHP程式來直接向使用者透過鍵盤的輸入取得資料來執行,並不是它的功能特色。實際上,PHP程式是透過伺服器端的網際網路協定來取得資料再加以執行,此點會在後面的說明中再加以說明。

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s