PHP站點(diǎn)的在線教程已經(jīng)很棒了。在那里還有一些其他教程的鏈接。而本文的該部分將讓你對PHP熟悉一點(diǎn)。我不可能做到?jīng)]有任何遺漏,我的目的只在于能讓你迅速開始你的PHP編程。
2.1 首要條件
你首先必須要有一個(gè)正在工作著的支持PHP的web服務(wù)器。我假定在你的服務(wù)器上所有PHP文件的擴(kuò)展名為.php3。
2.2 PHP的安裝
生成一個(gè)名為test.php3的文件,含有以下內(nèi)容:
然后在你的瀏覽器中打開此文件。看看這個(gè)頁面你就知道你的PHP安裝使用的選項(xiàng)了。
2.3 語法
就像前面提到的一樣,你可以混合編寫你的PHP代碼和HTML代碼。因此你必須有辦法將兩者區(qū)別開來。以下就是你可以采用的幾種方法。你可以選用其中一種你最適應(yīng)的并且就這樣堅(jiān)持這種方法!
從HTML中分離
以下是可以使用的方法:
<% . . . %>
語句
與Perl和C一樣,在PHP中用(;)來分隔語句。那些從HTML中分離出來的標(biāo)志也表示語句的結(jié)束。
注釋
PHP支持C,C++和Unix風(fēng)格的注釋方式:
/* C,C++風(fēng)格多行注釋 */
// C++風(fēng)格單行注釋
# Unix風(fēng)格單行注釋
Hello,World!
通過我們已經(jīng)學(xué)過的知識(shí),你可以編寫一個(gè)最簡單的程序輸出一個(gè)也許是程序世界中最有名的詞語:
echo "Hello World!";
?>
First PHP page
// Single line C++ style comment
/*
printing the message
*/
echo "Hello World!";
# Unix style single line comment
?>
2.4 數(shù)據(jù)類型
PHP支持整數(shù)、浮點(diǎn)數(shù)、字符串、數(shù)組和對象。變量類型通常不由程序員決定而由PHP運(yùn)行過程決定(真是好的解脫。。但是類型也可以被函數(shù)cast或者settype()明確的設(shè)定。
數(shù)值
數(shù)值類型可以是整數(shù)或是浮點(diǎn)數(shù)。你可以用以下的語句來為一個(gè)數(shù)值賦值:
$a = 1234; # 十進(jìn)制數(shù)
$a = -123; # 負(fù)數(shù)
$a = 0123; # 八進(jìn)制數(shù) (等于十進(jìn)制數(shù)的83)
$a = 0x12; # 十六進(jìn)制數(shù)(等于十進(jìn)制數(shù)的18)
$a = 1.234; # 浮點(diǎn)數(shù)"雙精度數(shù)"
$a = 1.2e3; # 雙精度數(shù)的指數(shù)形式
字符串
字符串可以由單引號(hào)或雙引號(hào)引出的字段定義。注意不同的是被單引號(hào)引出的字符串是以字面定義的,而雙引號(hào)引出的字符串可以被擴(kuò)展。反斜杠()可以被用來分割某些特殊字符。舉例如下:
$first = ’Hello’;
$second = "World";
$full1 = "$first $second"; # 產(chǎn)生 Hello World
$full2 = ’$first $second’;# 產(chǎn)生 $first $second
可以將字符和數(shù)字利用運(yùn)算符號(hào)連接起來。字符被轉(zhuǎn)化成數(shù)字,利用其最初位置。在PHP手冊中有詳細(xì)的例子。
數(shù)組與哈希表
數(shù)組與哈希表以同樣的方法被支持。怎樣運(yùn)用取決于你怎樣定義它們。你可以用list()或者array()來定義它們,也可以直接為數(shù)組賦值。數(shù)組的索引從0開始。雖然我在這里沒有說明,但是你一樣可以輕易的使用多維數(shù)組。
// 一個(gè)包含兩個(gè)元素的數(shù)組
$a[0] = "first";
$a[1] = "second";
$a[] = "third"; // 添加數(shù)組元素的簡單方法
// 現(xiàn)在$a[2]被賦值為"third"
echo count($a); // 打印出3,因?yàn)樵撌菙?shù)組有3個(gè)元素
// 用一個(gè)語句定義一個(gè)數(shù)組并賦值
$myphonebook = array (
"sbabu" => "5348",
"keith" => "4829",
"carole" => "4533"
);
// 噢,忘了教長吧,讓我們添加一個(gè)元素
$myphonebook["dean"] = "5397";
// 你定義的carale元素錯(cuò)了,讓我們更正它
$myphonebook["carole"] => "4522"
// 我還沒有告訴你怎樣使用數(shù)組的相似支持方式嗎?讓我們看一看
echo "$myphonebook[0]"; // sbabu
echo "$myphonebook[1]"; // 5348
其他一些對數(shù)組或哈希表有用的函數(shù)包括sort(),next(),prev()和each()。
對象
使用new語句產(chǎn)生一個(gè)對象:
class foo
{
function do_foo ()
{
echo "Doing foo.";
}
}
$bar = new foo;
$bar->do_foo();
改變變量類型
在PHP手冊中提到:"PHP不支持(也不需要)直接在聲明變量時(shí)定義變量類型;變量類型將根據(jù)其被應(yīng)用的情況決定。如果你為變量var賦值為一個(gè)字符串,那么它變成了一個(gè)字符串。如果你又為它賦了整數(shù)值,那么它就變成了整數(shù)。"
$foo = "0"; // $foo是字符串(ASCII 48)
$foo++; // $foo是字符串"1" (ASCII 49)
$foo += 1; // $foo現(xiàn)在是整數(shù)(2)
$foo = $foo + 1.3; // $foo是一個(gè)雙精度數(shù)(3.3)
$foo = 5 + "10 Little Piggies"; // $foo是一個(gè)整數(shù)(15)
$foo = 5 + "10 Small Pigs"; // $foo是一個(gè)整數(shù)(15)
如果想要強(qiáng)行轉(zhuǎn)換變量類型,可以使用與C語言相同的函數(shù)settype()。
2.5 變量與常量
可能你已經(jīng)注意到,變量都有一個(gè)美元符號(hào)($)的前綴。所有變量都是局部變量,為了使得定義的函數(shù)中可以使用外部變量,使用global語句。而你要將該變量的作用范圍限制在該函數(shù)之內(nèi),使用static語句。
$g_var = 1 ; // 全局范圍
function test()
{
global $g_var; // 這樣就可以聲明全局變量了
}
更先進(jìn)一些的是變量的變量表示。請參考PHP手冊。這在有時(shí)會(huì)顯得很有用。
PHP內(nèi)置了許多已定義的變量。你也可以用define函數(shù)定義你自己的常量,比如define("CONSTANT","value")。
2.6 運(yùn)算符
PHP具有C,C++和Java中的通常見到的運(yùn)算符。這些運(yùn)算符的優(yōu)先權(quán)也是一致的。賦值同樣使用"="。
算術(shù)和字符
以下只有一種運(yùn)算符是有關(guān)字符的:
$a + $b :加
$a - $b :減
$a * $b :乘
$a / $b :除
$a % $b :取模(余數(shù))
$a . $b :字符串連接
邏輯和比較
邏輯運(yùn)算符有:
$a || $b :或
$a or $b :或
$a && $b :與
$a and $b :與
$a xor $b :異或 (當(dāng)$a或$b為true時(shí)為true,兩者一樣時(shí)為false)
! $a :非
比較運(yùn)算符有:
$a == $b :相等
$a != $b :不等
$a < $b :小于
$a <= $b :小于等于
$a > $b :大于
$a >= $b :大于等于
與C一樣PHP也有三重運(yùn)算符(?:)。位操作符在PHP同樣存在。
優(yōu)先權(quán)
就和C以及Java一樣!
2.7 控制流程結(jié)構(gòu)
PHP有著與C一樣的流程控制。我將在下面大概介紹。
if, else, elseif, if(): endif
if (表達(dá)式一)
{
. . .
}
elseif (表達(dá)式二)
{
. . .
}
else
{
. . .
}
// 或者像Python一樣
if (表達(dá)式一) :
. . .
. . .
elseif (表達(dá)式二) :
. . .
else :
. . .
endif ;
Loops. while, do..while, for
while (表達(dá)式)
{
. . .
}
do
{
. . .
}
while (表達(dá)式);
for (表達(dá)式一; 表達(dá)式二; 表達(dá)式三)
{
. . .
}
//或者像Python一樣
while (expr) :
. . .
endwhile ;
switch
switch是對多重if-elseif-else結(jié)構(gòu)的最好的替換:
switch ($i)
{
case 0:
print "i equals 0";
case 1:
print "i equals 1";
case 2:
print "i equals 2";
}
break, continue
break中斷當(dāng)前的循環(huán)控制結(jié)構(gòu)。
continue被用來跳出剩下的當(dāng)前循環(huán)并繼續(xù)執(zhí)行下一次循環(huán)。
require, include
就像C中的#include預(yù)處理一樣。你在require中指定的那個(gè)文件將替代其在主文件中的位置。在有條件的引用文件時(shí),可以使用include()。這樣就使得你可以將復(fù)雜的PHP文件分割成多個(gè)文件并且在不同需要時(shí)分別引用它們。
2.8 函數(shù)
你可以像以下的例子一樣定義自己的函數(shù)。函數(shù)的返回值可以是任何數(shù)據(jù)類型:
function foo (變量名一, 變量名二, . . . , 變量名n)
{
echo "Example function. ";
return $retval;
}
所有PHP代碼都可以出現(xiàn)在函數(shù)定義中,甚至包括對其他函數(shù)和類的定義。函數(shù)必須在引用之前定義。
2.9 類
利用類模型建立類。可以參考PHP手冊中對類的詳細(xì)解釋。
class Employee
{
var $empno; // 員工人數(shù)
var $empnm; // 員工姓名
function add_employee($in_num, $in_name)
{
$this->empno = $in_num;
$this->empnm = $in_name;
}
function show()
{
echo "$this->empno, $this->empnm";
return;
}
function changenm($in_name)
{
$this->empnm = $in_name;
}
}
$sbabu = new Employee;
$sbabu->add_employee(10,"sbabu");
$sbabu->changenm("babu");
$sbabu->show();
|
相關(guān)說明: 您可以通過電話:020-85421558 與我們聯(lián)系,我們會(huì)根據(jù)您所從事的行業(yè)領(lǐng)域和網(wǎng)站類型,在最短的時(shí)間內(nèi)請我們的營銷顧問與您預(yù)約后上門拜訪您,直接面談交流為您解答所有的網(wǎng)站建設(shè)疑問。
|
|