分析我們的第一個程序
<?php
echo 'This is my first PHP program.';
第一行代碼為
<?php
所有的PHP代碼都需要包含在 <?php
和 ?>
之間六剥,第一個為起始標簽告訴PHP開始解析,第二個為結(jié)束標簽告訴PHP停止解析峰伙。PHP 也允許使用短標記 <?
和 ?>
疗疟,但不鼓勵使用。
大家可能會說瞳氓,你這個代碼有問題策彤,沒有結(jié)束標簽。PHP官方解釋如下匣摘。
如果文件內(nèi)容是純 PHP 代碼店诗,最好在文件末尾刪除 PHP 結(jié)束標記。這可以避免在 PHP 結(jié)束標記之后萬一意外加入了空格或者換行符音榜,會導致 PHP 開始輸出這些空白庞瘸。
第二行代碼為
echo 'This is my first PHP program.';
其中 echo 作用為輸出一個或多個字符串,它不是一個函數(shù)赠叼,它是一個語言結(jié)構(gòu)擦囊,所以沒有括號违霞。
PHP 需要在每個語句后用分號;
結(jié)束指令。
代碼中的單引號''
包起來的部分表示它是一個字符串瞬场,當然买鸽,也可以用雙引號來表示。
如下為使用 echo 輸出多個字符串贯被,使用了單雙引號眼五。
echo "This", ' ', "is my first PHP program.";
在 echo 中使用雙引號時,區(qū)別于單引號的時刃榨,可以使用變量弹砚,或者一些轉(zhuǎn)義字符双仍,如命令行下的換行符等枢希,建立我們的第二個程序 example_02.php ,并在命令行下運行如下命令朱沃,原因是\n
換行在命令行下才會換行苞轿,在瀏覽器上并不會換行。
<?php
$name = "Smith";
echo "My name is $name.\nHer name is Mary.\n";
輸出的結(jié)果如下:
My name is Smith.
Her name is Mary.
小伙伴們可能會想逗物,我如果要輸出單引號搬卒、雙引號怎么辦?示例如下翎卓。
<?php
echo "She Said \"I'm a Girl\".\n";
echo 'She Said "I\'m a Girl".\n';
輸出結(jié)果如下:
She Said "I'm a Girl".
She Said "I'm a Girl".\n
我們可以在雙引號里用單引號契邀,可以在單引號用雙引號。如果要在雙引號里用雙引號需要用\"
來轉(zhuǎn)義失暴,如果在單引號里用單引號也要用\'
來轉(zhuǎn)義坯门。細心的小伙伴可能注意到結(jié)果里有一個\n
,原因很簡單逗扒,在單引號里的\r
,\n
等特殊的ASCII字符時古戴,不進行任何處理,只是當成字符串矩肩。
注釋
注釋就像說明書现恼,讓別人知道你要做什么。注釋應該用簡短的語言清晰的描述你的意圖黍檩。下面用一個示例來說明一下叉袍。
<?php
/**
* 演示注釋的用法(注釋一)
*
* @author 波哥
* @date 2017-04-19
* @copyright Copyright(c) 2017
*/
/**
* 取錢(注釋一)
*
* @param int $amount 取錢的金額
*
* @return bool
*/
function getMoney($amount) {
/* 取錢不能為負數(shù)或者零 (注釋三) */
if ($amount <= 0) {
return false;
}
/* 如果錢不夠 (注釋四) */
if ($exist < $amount) {
return false;
} else {
// 減少該賬戶現(xiàn)有金額 (注釋五)
return true;
}
}
/*
本文件結(jié)束
這是多行注釋
也是無用注釋(注釋六)
*/
沒有注釋的代碼是世界上最垃圾的代碼。有人說刽酱,我寫的代碼喳逛,不需要注釋,我都記得肛跌。是的艺配,現(xiàn)在你能記住察郁,N年之后呢?如果我們接手別人的代碼转唉,一行注釋也沒有皮钠,然后代碼量又特別大,我們會是怎么樣的心情呢赠法?所以請大家重視注釋麦轰。
多行注釋用 /* */
包裹,單行也可以用 /* */
, 更多的是 //
砖织,也可以用 '#'款侵,但不推薦。
- 注釋一侧纯,為文件或者類注釋新锈,告訴大家我這個文件或者類是做什么的。
- 注釋二眶熬,為方法注釋妹笆,
@param int $amount 取錢的金額
表示 取錢的金額 只接收整數(shù)類型@return bool
表示返回值為布爾類型。 - 注釋三娜氏、四拳缠、五均為單行注釋。一般用來說明一下該處代碼的意圖贸弥。
- 注釋六窟坐,屬于無用注釋,不需要寫绵疲。
代碼規(guī)范
上面的例子里哲鸳,比如方法名,比如注釋最岗,比如縮進帕胆,比如if
前面的四個空格,后面的一個空格般渡,這些都是代碼規(guī)范懒豹,好的代碼規(guī)范給你的感覺就像國慶閱兵的方陣。
好的代碼規(guī)范會讓你很快融入到對方的代碼邏輯中驯用。越是多人協(xié)作脸秽,就越需要統(tǒng)一的代碼規(guī)范來約束。
UTF8與中文顯示支持
從國際化的角度上來講蝴乔,我是強烈建議大家用UTF8字符集记餐,很多GBK和GB2312的項目也越來越多的遷移到了UTF8上來。
我們使用Sublime Text 3新建一個example_03.php薇正,輸入如下代碼
<?php
echo '我的名字叫張三';
保存時編輯器左下角會有如下圖所示片酝,可以清晰的看到是UTF8囚衔。如果不確定,請文件/File
->Set File Encoding to
->UTF8
Ctrl + B 可以看到?jīng)]有亂碼雕沿,可以正常輸出练湿。
如果在瀏覽器里,可能會有亂碼出現(xiàn)审轮,如下圖:
原因是瀏覽器不知道以什么字符集來顯示肥哎,那么我們要明確的告知它以UTF8來顯示,在 example_03.php中加上一段html代碼疾渣。
<?php
echo '<meta charset="utf-8">'; /* 告訴瀏覽器我們要用utf-8 */
echo '我的名字叫張三';
HTML混編
新建 example_04.php 輸入如下內(nèi)容篡诽,并在瀏覽器中打開
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title><?php echo '我是一個HTML與PHP的混合頁面'; ?></title>
</head>
<body>
<?php echo '<b>我被加粗了</b>'; ?>
<?php echo '<p>我換行了</p>'; ?>
</body>
</html>
我們可以看到,我們的PHP代碼實際上是嵌入在了HTML代碼中榴捡,最后命名成了example_04.php
杈女。
右鍵->查看網(wǎng)頁源代碼
我們也可以把html用PHP來全部輸出,如下 example_05.php
薄疚,它的結(jié)果和 example_04.php
完全一樣碧信。
<?php
echo '<!DOCTYPE html>';
echo '<html>';
echo '<head>';
echo '<meta charset="utf-8">';
echo '<title>我是一個HTML與PHP的混合頁面</title>';
echo '</head>';
echo '<body>';
echo '<b>我被加粗了</b>';
echo '<p>我換行了</p>';
echo '</body>';
echo '</html>';
動態(tài)網(wǎng)站的原理就是PHP、JAVA街夭、.NET等語言把數(shù)據(jù)獲取,組合成HTML代碼躏筏,輸出板丽,然后我們的瀏覽器解析成我們?nèi)庋劭吹降木理撁妗?/p>