首先PHP語言是一種面向對象的語言而C語言是面向過程的。PHP主要是用來開發web程序的語言,而C語言是種廣泛使用的語言,尤其用來書寫一下比較復雜的后台代碼。
PHP和C語言一樣,有着if, else, elseif ,switch, while, do-while, for, break, continue, goto等控制語句。注意PHP中寫為elseif ,而C語言中式else if;另外PHP引進了foreach 這種控制語句
在php語言中和C語言一樣,有文件包含的功能,可以采用include包含一個文件,其功能相當於復制了這個文件里的所有內容,不過在php語言中它是以函數的形式體現的,另外如果PHP中的include函數在條件語句中調用,必須用大括號括起來。而且php語言的函數有的可以忽略括號直接調用,如print, echo, inchude。舉例如下: PHP print "ssss"; C語言 printf("sss");
在C語言中,數組是統一類型的數據的集合,但是在PHP中,數組的元素可以不屬於同一種類型。對於PHP中,每個數組實體包好兩個項:前面提到的鍵(Key)和值(value),這一個概念有點類似於C#中的HASH表,但是又與它有着很大區別。
$states = array("OH" => "Ohio", "PA" =>"Pennsylvania", "NY"=>"New York")
可以用
$states["OH"]
來引用Ohio.
C語言中,沒有專門的關鍵字用來表示數組,而在PHP語言中$state則表示一個數組,
$state[0] = "hello";就可以表示一個PHP數組聲明的成功,而且如果索引值是數值索引而且遞增的在PHP數組中的添加過程中可以省略索引值。
最后,PHP語言作為一個有着豐富函數支持的面向對象的語言,你還可以使用array(), list(), range()等函數直接構建數組,如
$languages = array("Englist", "Gaelic", "Spanlish");
$even = range(0, 20, 2);
// array range(int low, int high, int step)是range的函數原型,當step參數省略時,默認指步長為1
// 所以上述就等價於$even = array(0, 2, 4, 6. 8, 10, 12, 14, 16, 18, 20)
// 另外,range函數還可以用於字符序列。例如 $letters = range("A", "F");表示包含字母A到F的數組
PHP語言做作為一種相當靈活的語言,也吸收了FIFO、LIFO等仿隊列的思想,提供了push、pop、shift、unshift等函數方便的操作數組。
boolean is_array(mixed variable) //測試是不是一個數組
int array_unshift(array array, mixed variable [, mixed variable……])//在數組頭添加元素
int array_push(array array, mixed variable [, mixed variable……])//在數組尾添加元素
mixed array_shift(arrar array)//函數刪除並返回數組頭的元素
mixed array_pop(arrar array)//函數刪除並返回數組尾的元素
boolean in_array(mixed needle, array haystack [, boolean strict])//在數組中搜索一個特定值,第三個參數強制in_array()在搜索時考慮類型
boolean array_key_exists(mixed key, array array)//搜索關鍵數組鍵
mixed array_search(mixed needle, array haystack [, boolean strict])//搜索關聯數組值
array array_keys(array array [, mixed search_value])//返回一個數組,包含所搜索數組中的所有鍵
array array_values(array array)//返回一個數組中的所有值,自動提供數值索引
除了這些基本操作以外,還可以遍歷數組,確定數組大小,數組排序,合並、拆分、結合和分解數組,以及隨機返回數組值的東西,總之PHP提供了多種函數保證數組的靈活操作。
PHP特性
1 變量的變量 $s = "sss" $sss = " & aaa", 那么$sss就是變量的變量;
echo $s $sss;
echo $s ${$s};
上面兩行代碼會輸出相同的結果,都是 sss & aaa
2 heredoc 的使用。heredoc是表示字符串文本的一種方式,為輸出大量文本提供了一種便利的方式,只要是采用兩個完全相同的標示符,即可表示一段文本。示例:
注意事項:
1 在這段文本中,開始和結束的標示符都是EXCEPT,他們必須完全相同,而且僅有字符和下划線組成。
2 開始標示符前有三個尖括號 <<<
3 結束標示符必須在一行的開始處,且前面不能有任何空格或多余的字符。此外,開始或結束標示符后面的任何空格都會導致語法錯誤。