1.join():
定義和用法
join() 函數返回由數組元素組合成的字串。
join() 函數是 implode() 函數的別名。
注釋:join() 函數接受兩種參數順序。但是由於曆史原因,explode() 是不行的,您必須保證 separator 參數在 string 參數之前才行。
注釋:join() 函數的 separator 參數是可選的。但是為了向後相容,推薦您使用使用兩個參數。
文法
join(separator,array)
參數
separator:可選,規定數組元素之間放置的內容,預設是 ""(Null 字元串)也可以是"+","-"等等。
array:必需,要組合為字串的數組。
2.array_keys()
定義和用法:
array_keys() 函數返回包含數組中所有鍵名的一個新數組。
如果提供了第二個參數,則只返回索引值為該值的鍵名。
例如:
<?php$a=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander");print_r(array_keys($a));?>
運行結果:
Array ( [0] => Volvo [1] => BMW [2] => Toyota )
3.array_values():
定義和用法:
array_values() 函數返回一個包含給定數組中所有索引值的數組,但不保留鍵名。
提示:被返回的數組將使用數值鍵,從 0 開始並以 1 遞增。
例如:
<?php$a=array("Name"=>"Bill","Age"=>"60","Country"=>"USA");print_r(array_values($a));?>
運行結果:
Array ( [0] => Bill [1] => 60 [2] => USA )
4.mysql_query()函數:
mysql_query()如果裡面放的是查詢之類的語句,那返回的是資源,說白了就是你要查的資料結果集;如果裡面放的是增刪改之類的語句,那返回的是true或者false了。
如果你要使用這個資料結果集,必須用mysql_result(), mysql_fetch_array(), mysql_fetch_row()等函數擷取裡面的資料,就是mysql_query()得和上面幾個函數配合使用。
5.mysql_fetch_assoc():
mysql_fetch_assoc會從結果集中取出一行記錄,而且資源指標會往下跳,
也就是說,再用mysql_fetch_assoc時,會取得新的一行記錄,
以此類推,每執行一次mysql_fetch_assoc,取一新行,直到取出最後一行,
再取時,因為已經沒有下一行,就會返回false。
綜上所述:
在你的第一個例子中,
$s_as=mysql_fetch_assoc($s_re);while($s_as)
是取出結果集的第一行,第一行不為空白吧,所以$s_as不等於false,所以,當你用while($s_as)時,相當於while(true),是一個死迴圈,應該改成:
$s_as = mysql_fetch_assoc($s_re);while($s_as) {$arr[] = $s_as;$s_as = mysql_fetch_assoc($s_re); //你沒寫這行,所以$s_as永遠不是false造成死迴圈。}
第二個例子中,則不同,while($s_as=mysql_fetch_assoc($s_re)),每次取一行,當取到最後一行時,再沒有一下行了,mysql_fetch_assoc就會返回flash,也就是$s_as=false,while迴圈就會停止
6.substr(string,start,length):
處理字串string。
start:規定再字串的何處開始。
length:可選,規定被返回字串的長度。預設是知道字串的結尾。
7.foreach():
用於遍曆操作或輸出數組,foreach() 僅能用於遍曆數組或對象,當試圖將其用於其它資料類型或者一個未初始化的變數時會產生錯誤.
文法:
foreach (array as $value)statement// 或者:foreach (array as $key => $value)statement
上述文法中,每次迴圈將當前單元的值賦給 $value 並且數組內部的指標向前移一步。在第二種文法格式中還將當前單元的鍵名也會在每次迴圈中賦給變數 $key。
8.檔案路徑處理函數
basename():擷取檔案路徑的檔案名稱.
dirname():擷取檔案路徑的目錄
9.字串處理函數
stripos(string,find,start)
定義和用法
stripos() 函數尋找字串在另一字串中第一次出現的位置(不區分大小寫)。
注釋:stripos() 函數是不區分大小寫。
注釋:該函數是二進位安全的
10.floor() 函數:向下舍入為最接近的整數。
11.feof ( )函數:
函數原型:
int feof(FILE * stream);
所在標頭檔:
stdio.h
傳回值:
返回非零值代表已到達檔案尾
函數說明:
feof ( ) 用來偵測是否讀取到了檔案尾, 尾數stream 為fopen()所返回之檔案指標. 如果已到檔案尾則返回非零值, 其他情況返回0;
注意:feof ( )函數,讀取檔案的最後一個字元以後,C 語言的feof ( ) 函數依然返回 0,表明沒有到達檔案結尾;只有當fgetc ( ) 向後再讀取一個字元(即越過最後一個字元),feof()才會返回一個非零值,表示到達檔案結尾。
12.fscanf()
fscanf函數從一個流中執行格式化輸入,fscanf遇到空格和換行時結束,注意空格時也結束。這與fgets有區別,fgets遇到空格不結束。
原型:int fscanf(FILE *stream, char *format,[argument...]);
傳回值:返回實際被轉換並賦值的輸入項的數目。
%d:讀入一個十進位整數。
%i :讀入十進位,八進位,十六進位整數,與%d類似,但是在編譯時間通過資料前置來區分進位,如加入“0x”則是十六進位,加入“0”則為八進位。例如串“031”使用%d時會被算作31,但是使用%i時會算作25。