中原大學PHP視頻教程 之一

來源:互聯網
上載者:User
來自http://www.linji.cn/1096.htm

1. define() 的功能可以讓我們自行定義所需要的常數

<?php

 define("CONSTANT", "Hello world.");
 echo CONSTANT; // 輸出 "Hello world."字串
 echo Constant."<br />"; // 輸出 "Constant"      沒有大寫

 define("GREETING", "Hello you.", true);  
 echo GREETING; // 輸出 "Hello you."
 echo Greeting; // 輸出 "Hello you."   在後面加 true
?>

"COPYRIGHT" 要大寫,如果沒有大寫,必須在後面加 true

2. 在 PHP 中,全域變數的有效範圍 (scope) 僅限於主要程式中,不會影響到函式中同名的變數,也就是全域變數與區域變數互不侵犯。若要變數能通透到函式中,就要用到 $GLOBALS 陣列或是使用 global 宣告。

3. $GLOBALS["PHP_SELF"] : 取得目前執行 PHP 程式頁面的檔名

<?php
// 本程式使用 $GLOBALS 陣列
function myfunc() {
 echo $GLOBALS["PHP_SELF"];
}
myfunc();
?>

4. 函式在執行時所產生的變數,在函式結束時就消失了,有時因為程式的需要,函式在迴圈中,當不希望變數在每次執行完函式就消失的話,靜態變數 (static variable) 就派上用場了。下例中,使用 $mystr 變數之前,先在變數前面加上 static,即表示變數 $mystr 是靜態變數,當每次執行 myfunc() 函式時,$mystr 的值會一直增加,每執行一次就多一個哈字。若將 static 的靜態變數宣告拿掉,就沒辦法累加哈字了。

<?php
// 靜態變數的例子
function myfunc() {
 static $mystr;
 $mystr.="哈";
 echo $mystr."<br>\n";
}
myfunc();   // 哈
myfunc();   // 哈哈
myfunc();   // 哈哈哈
?>

5. 變數在引號中的妙用

單引號  '    '
死翹翹,沒有任何作用,直接輸出裡面的內容

雙引號  "    "
聰明的 PHP 會自動幫你處理,輸出時會將裡面的變數替換

6. 表格的顏色,讓隔行的顏色不同。

<?php
function TdBackColor() {                     // 定義函數
 static $ColorStr;
 if ($ColorStr=="808080") {
   $ColorStr="c0c0c0";
 } else {
   $ColorStr="808080";
 }
 return($ColorStr);
}
echo "<table border=1>\n";
for ($i=0; $i<10; $i++) {
 $ColorStr=TdBackColor();                 // 調用函數
 echo "<tr><td bgcolor=".$ColorStr.">這是第".$i."行</td></tr>\n";
}
echo "</table>";
?>

7. PHP 的變數提示上,最令人覺得不可思議的則是變數的變數 (variable variable)。這是充分利用 PHP 特性玩出的特殊技巧

<?php
$a = "Hello";
$$a = "world";
echo "$a, $Hello";   // Hello, world           第二個$Hello就是$$a,只不過是用$a的值Hello代替了它
echo "$a, ${$a}";    
/* 也是 Hello, world   第二個${$a}就是$$a,[b][color=#FF0000]這裡不理解為什麼要用{$a}這種形式調用變數$a,而且只有這種調用才能正確的輸出(經測試),為什麼不能直接調用$$a?[/color]也許:{$a}就可以得到$a的值Hello,然後${$a}也就變成了$Hello的形式,變數名也就變成了Hello,也就是變數$a的值,這個就可以理解成變數的變數(以變數的值作為新變數的變數名)[/b] */
?>

8. 由於 PHP 許多語法都是 C 語言的翻版,故 PHP 在使用變數時,隨時都可以使用新的變數,只要在使用前將變數初始化就好了,不必像 Pascal 語言那樣嚴謹,所有要使用的變數都要事先宣告。這當然有好處與壞處:好處是使用方便、自由;壞處就是常常因這些自由而付出相當大的代價除錯。在程式碼短的 PHP 程式當然不成問題,當程式在數百數千行,甚至 include 或 require 好幾層之後,問題就浮現出來了。無論如何,保持良好的寫作習慣才是避免浪費青春的方法。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.