摘要:輸入兩個數組輸出返回完成后的數組在數組中根據條件取出一段值,并返回。如果要再用遍歷數組,必須使用。返回值數組中當前指針位置的鍵值對并向前移動數組指針。鍵值對被返回為四個單元的數組,鍵名為,,和。
數學函數
1.abs(): 求絕對值
$abs = abs(-4.2); //4.2
輸入: 數字
輸出: 絕對值數字
2.ceil(): 進一法取整
echo ceil(9.999); // 10
輸出: 浮點數進一取整
3.floor(): 去尾法取整
echo floor(9.999); // 9
輸出: 浮點數直接舍去小數部分
4.fmod(): 浮點數取余
$x = 5.7; $y = 1.3; // 兩個浮點數,x>y 浮點余數
$r = fmod($x, $y); // $r equals 0.5, because 4 * 1.3 + 0.5 = 5.7
5.pow(): 返回數的n次方
echo pow(-1, 20); // 1 基礎數|n次方乘方值
6.round(): 浮點數四舍五入
echo round(1.95583, 2); // 1.96, 一個數值|保留小數點后多少位,默認為0 舍入后的結果
7.sqrt(): 求平方根
echo sqrt(9); //3 被開方的數平方根
8.max(): 求最大值
echo max(1, 3, 5, 6, 7); // 7
多個數字或數組
返回其中的最大值
echo max(array(2, 4, 5)); // 5
9.min(): 求最小值
輸入: 多個數字或數組
輸出: 返回其中的最小值
10.mt_rand(): 更好的隨機數
輸入: 最小|最大,
輸出: 隨機數隨機返回范圍內的值
echo mt_rand(0,9);//n
11.rand(): 隨機數
輸入: 最小|最大,
輸出: 隨機數隨機返回范圍內的值
12.pi(): 獲取圓周率值
字符串函數
去空格或或其他字符:
13.trim(): 刪除字符串兩端的空格或其他預定義字符
$str = "
Hello World!
"; echo trim($str);
輸入: 目標字符串
返回值: 清除后的字符串
14.rtrim(): 刪除字符串右邊的空格或其他預定義字符
$str = "Hello World!
"; echo rtrim($str);
15.chop(): rtrim()的別名
16.ltrim(): 刪除字符串左邊的空格或其他預定義字符
$str = "
Hello World!"; echo ltrim($str);
17.dirname(): 返回路徑中的目錄部分
echo dirname("c:/testweb/home.php"); //c:/testweb
輸入: 一個包含路徑的字符串
返回值: 返回文件路徑的目錄部分
字符串生成與轉化:
18.str_pad(): 把字符串填充為指定的長度
$str = "Hello World"; echo str_pad($str,20,".");
輸入:
要填充的字符串|新字符串的長度|供填充使用的字符串, 默認是空白
輸出:
完成后的字符串
19.str_repeat(): 重復使用指定字符串
echo str_repeat(".",13); // 要重復的字符串|字符串將被重復的次數13個點
20.str_split(): 把字符串分割到數組中
print_r(str_split("Hello"));
輸入: 要分割的字符串|每個數組元素的長度,默認1
輸出: 拆分后的字符串數組
21.strrev(): 反轉字符串
echo strrev("Hello World!"); // !dlroW olleH
輸出: 目標字符串顛倒順序后的字符串
22.wordwrap(): 按照指定長度對字符串進行折行處理
$str = "An example on a long word is: Supercalifragulistic"; echo wordwrap($str,15);
輸入: 目標字符串|最大寬數
輸出: 折行后的新字符串
23.str_shuffle(): 隨機地打亂字符串中所有字符
echo str_shuffle("Hello World");
輸入: 目標字符串順序
輸出: 打亂后的字符串
24.parse_str(): 將字符串解析成變量
parse_str("id=23&name=John%20Adams", $myArray);
print_r($myArray);
輸入: 要解析的字符串|存儲變量的數組名稱
輸出:
Array(
[id] => 23[name] => John Adams)
25.number_format(): 通過千位分組來格式化數字
輸入:
要格式化的數字|規定多少個小數|規定用作小數點的字符串|規定用作千位分隔符的字符串
輸出:
1,000,000
1,000,000.00
1.000.000,00
大小寫轉換:
26.strtolower(): 字符串轉為小寫
echo strtolower("Hello WORLD!");
目標字符串
小寫字符串
27.strtoupper(): 字符串轉為大寫
echo strtoupper("Hello WORLD!");
輸出: 大寫字符串
28.ucfirst(): 字符串首字母大寫
echo ucfirst("hello world"); // Hello world
29.ucwords(): 字符串每個單詞首字符轉為大寫
echo ucwords("hello world"); // Hello World
html標簽關聯:
30.htmlentities(): 把字符轉為HTML實體
$str = "John & "Adams"";echo htmlentities($str, ENT_COMPAT); // John & "Adams"
31.htmlspecialchars(): 預定義字符轉html編碼
32.nl2br(): n轉義為
標簽
echo nl2br("One line.
Another line.");
輸出: 處理后的字符串
33.strip_tags(): 剝去 HTML、XML 以及 PHP 的標簽
echo strip_tags("Hello world!");
34.addcslashes():在指定的字符前添加反斜線轉義字符串中字符
$str = "Hello, my name is John Adams."; echo $str; echo addcslashes($str,"m");
輸入:
目標字符串|指定的特定字符或字符范圍
35.stripcslashes(): 刪除由addcslashes()添加的反斜線
echo stripcslashes("Hello, my name is Kai Jim."); // 目標字符串 Hello, my name is Kai Jim.
36.addslashes(): 指定預定義字符前添加反斜線
$str = "Who"s John Adams?";echo addslashes($str);
輸出: 把目標串中的’ ” 和null進行轉義處理
37.stripslashes(): 刪除由addslashes()添加的轉義字符
echo stripslashes("Who"s John Adams?"); // 清除轉義符號Who"s John Adams?
38.quotemeta(): 在字符串中某些預定義的字符前添加反斜線
$str = "Hello world. (can you hear me?)";echo quotemeta($str); // Hello world. (can you hear me?)
39.chr(): 從指定的 ASCII 值返回字符
echo chr(052); // ASCII 值返回對應的字符
40.ord(): 返回字符串第一個字符的ASCII值
echo ord("hello"); 字符串第一個字符的 ASCII 值
字符串比較:
41.strcasecmp(): 不區分大小寫比較兩字符串
echo strcasecmp("Hello world!","HELLO WORLD!");
輸入:
兩個目標字符串
輸出:
大1|等0|小 -1
42.strcmp(): 區分大小寫比較兩字符串
43.strncmp(): 比較字符串前n個字符,區分大小寫
調用: int strncmp ( string $str1 , string $str2 , int $len)
44.strncasecmp(): 比較字符串前n個字符,不區分大小寫
調用: int strncasecmp ( string $str1 , string $str2 , int $len )
45.strnatcmp(): 自然順序法比較字符串長度,區分大小寫
調用: int strnatcmp ( string $str1 , string $str2 )
輸入:
目標字符串
46.strnatcasecmp(): 自然順序法比較字符串長度, 不區分大小寫
調用: int strnatcasecmp ( string $str1 , string $str2 )
字符串切割與拼接:
47.chunk_split():將字符串分成小塊
調用: str chunk_split(str $body[,int $len[,str $end]])
輸入:
$body目標字串, $len長度, $str插入結束符
輸出:
分割后的字符串
48.strtok(): 切開字符串
調用: str strtok(str $str,str $token)
目標字符串$str,以$token為標志切割返回切割后的字符串
49.explode(): 使用一個字符串為標志分割另一個字符串
調用: array explode(str $sep,str $str[,int $limit])
輸入: $sep為分割符,$str目標字符串,$limit返回數組最多包含元素數
輸出: 字符串被分割后形成的數組
50.implode(): 同join,將數組值用預訂字符連接成字符串
調用: string implode ( string $glue , array $pieces )
$glue默認, 用”則直接相連
51.substr(): 截取字符串
調用: string substr ( string $string , int $start [, int $length ] )
字符串查找替換:
52.str_replace(): 字符串替換操作,區分大小寫
調用
mix str_replace(mix $search,mix $replace, mix $subject[,int &$num])
輸入:
$search查找的字符串,$replace替換的字符串,$subject被查找字串, &$num
輸出: 返回替換后的結果
53.str_ireplace() 字符串替換操作,不區分大小寫
調用: mix str_ireplace ( mix $search , mix $replace , mix $subject [, int &$count ] )
輸入:
$search查找的字符串,$replace替換的字符串,$subject被查找字串,&$num
輸出: 返回替換后的結果
54.substr_count(): 統計一個字符串,在另一個字符串中出現次數
調用: int substr_count ( string $haystack , string $needle[, int $offset = 0 [, int $length ]] )
55.substr_replace(): 替換字符串中某串為另一個字符串
調用: mixed substr_replace ( mixed $string, string $replacement,int $start [, int $length ] )
56.similar_text(): 返回兩字符串相同字符的數量
調用:
int similar_text(str $str1,str $str2) 輸入:
兩個比較的字符串
輸出:
整形,相同字符數量
57.strrchr(): 返回一個字符串在另一個字符串中最后一次出現位置開始到末尾的字符串
調用: string strrchr ( string $haystack , mixed $needle )
58.strstr(): 返回一個字符串在另一個字符串中開始位置到結束的字符串
調用: string strstr ( string $str, string $needle , bool $before_needle )
59.strchr(): strstr()的別名,返回一個字符串在另一個字符串中首次出現的位置開始到末尾的字符串
調用: string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] )
60.stristr(): 返回一個字符串在另一個字符串中開始位置到結束的字符串,不區分大小寫
調用:string stristr ( string $haystack , mixed $needle [, bool $before_needle = false ] )
61.strtr(): 轉換字符串中的某些字符
調用: string strtr ( string $str , string $from , string $to )
62.strpos(): 尋找字符串中某字符最先出現的位置
調用: int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] )
63.stripos(): 尋找字符串中某字符最先出現的位置,不區分大小寫
調用: int stripos ( string $haystack , string $needle [, int $offset ] )
64.strrpos(): 尋找某字符串中某字符最后出現的位置
調用: int strrpos ( string $haystack , string $needle [, int $offset = 0 ] )
65.strripos(): 尋找某字符串中某字符最后出現的位置,不區分大小寫
調用:
int strripos ( string $haystack , string $needle [, int $offset ] )
66.strspn(): 返回字符串中首次符合mask的子字符串長度
調用: int strspn ( string $str1 , string $str2 [, int $start [, int $length ]] )
67.strcspn(): 返回字符串中不符合mask的字符串的長度
調用: int strcspn ( string $str1 , string $str2 [, int $start [, int $length ]] )
輸入:
$str1被查詢,$str2查詢字符串,$start開始查詢的字符,$length是查詢長度
輸出:
返回從開始到第幾個字符
68.str_word_count(): 統計字符串含有的單詞數
調用: mix str_word_count(str $str,[])
輸入: 目標字符串
輸出: 統計處的數量
69.strlen(): 統計字符串長度
函數原型: int strlen(str $str)
輸入: 目標字符串
輸出:整型長度
70.count_chars(): 統計字符串中所有字母出現次數(0..255)
調用: mixed count_chars ( string $string [, int $mode ] )
字符串編碼:
71.md5(): 字符串md5編碼
$str = "Hello";
echo md5($str);
數組函數
數組創建:
72.array(): 生成一個數組
$a=array("Dog","Cat","Horse");
print_r($a);
數組值或,鍵=>值一個數組型變量
73.array_combine(): 生成一個數組,用一個數組的值
作為鍵名,另一個數組值作為值
$a1=array("a","b","c","d"); $a2=array("Cat","Dog","Horse","Cow");
print_r(array_combine($a1,$a2));
輸入參數: $a1為提供鍵,$a2提供值
輸出: 合成后的數組
74.range(): 創建并返回一個包含指定范圍的元素的數組。
$number = range(0,50,10);
print_r ($number);
輸入: 0是最小值,50是最大值,10是步長
輸出: 合成后的數組
75.compact(): 創建一個由參數所帶變量組成的數組
$firstname = "Peter"; $lastname = "Griffin"; $age = "38"; $result = compact("firstname", "lastname", "age");
print_r($result);
變量或數組
返回由變量名為鍵,變量值為值的數組,變量也可以為多維數組.會遞歸處理
76.array_fill(): 用給定的填充(值生成)數組
$a=array_fill(2,3,"Dog");
print_r($a);
2是鍵,3是填充的數量,’Dog’為填充內容返回完成的數組
數組合并和拆分:
77.array_chunk(): 把一個數組分割為新的數組塊
$a=array("a"=>"Cat","b"=>"Dog","c"=>"Horse","d"=>"Cow");
print_r(array_chunk($a,2));
一個數組分割后的多維數組,規定每個新數組包含2個元素
78.array_merge(): 把兩個或多個數組合并為一個數組。
$a1=array("a"=>"Horse","b"=>"Dog"); $a2=array("c"=>"Cow","b"=>"Cat");
print_r(array_merge($a1,$a2));
輸入: 兩個數組
輸出: 返回完成后的數組
79.array_slice(): 在數組中根據條件取出一段值,并返回。
$a=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird");
print_r(array_slice($a,1,2));
輸入: 一個數組
輸出: 1為從’Cat’開始,2為返回兩個元素
80.array_diff(): 返回兩個數組的差集數組
$a1=array(0=>"Cat",1=>"Dog",2=>"Horse");$a2=array(3=>"Horse",4=>"Dog",5=>"Fish");
print_r(array_diff($a1,$a2)); //返回"Cat"
輸入: 兩個或多個數組
輸出: $a1與$a2的不同之處
81.array_intersect(): 返回兩個或多個數組的交集數組
輸出:
返回’Dog’和’Horse’, $a1與$a2的相同之處
82.array_search(): 在數組中查找一個值,返回一個鍵,沒有返回返回假
$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse"); echo array_search("Dog",$a);
輸入: 一個數組
輸出: 成功返回鍵名,失敗返回false
83.array_splice(): 把數組中一部分刪除用其他值替代
$a1=array(0=>"Dog",1=>"Cat",2=>"Horse",3=>"Bird"); $a2=array(0=>"Tiger",1=>"Lion");
array_splice($a1,0,2,$a2);
print_r($a1);
輸入: 一個或多個數組
輸出: $a1被移除的部分由$a2補全
84.array_sum(): 返回數組中所有值的總和
$a=array(0=>"5",1=>"15",2=>"25"); echo array_sum($a);
輸入: 一個數組
輸出: 返回和
85.in_array(): 在數組中搜索給定的值,區分大小寫
$people = array("Peter", "Joe", "Glenn", "Cleveland"); if (in_array("Glenn",$people) { echo "Match found";
} else{ echo "Match not found";
}
輸入: 需要搜索的值|數組
輸出: true/false
86.array_key_exists(): 判斷某個數組中是否存在指定的 key
輸入: 需要搜索的鍵名|數組
數組引用操作:87.key(): 返回數組內部指針當前指向元素的鍵名
88.current(): 返回數組中的當前元素(單元).
89.next(): 把指向當前元素的指針移動到下一個元素的位置,并返回當前元素的值
90.prev(): 把指向當前元素的指針移動到上一個元素的位置,并返回當前元素的值
91.end(): 將數組內部指針指向最后一個元素,并返回該元素的值(如果成功)
92.reset(): 把數組的內部指針指向第一個元素,并返回這個元素的值
93.list(): 用數組中的元素為一組變量賦值
$my_array=array("Dog","Cat","Horse"); list($a, $b, $c) = $my_array;
輸入: $a, $b, $c為需要賦值的變量
輸出: 變量分別匹配數組中的值
94.array_shift(): 刪除數組中的第一個元素,并返回被刪除元素的值
$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse"); echo array_shift($a);
print_r ($a);
95.array_unshift(): 在數組開頭插入一個或多個元素
$a=array("a"=>"Cat","b"=>"Dog");
array_unshift($a,"Horse");
print_r($a);
96.array_push(): 向數組最后壓入一個或多個元素
$a=array("Dog","Cat");
array_push($a,"Horse","Bird");
print_r($a);
輸入: 目標數組|需要壓入的值
返回值: 返回新的數組
97.array_pop(): 取得(刪除)數組中的最后一個元素
$a=array("Dog","Cat","Horse");
array_pop($a);
print_r($a);
輸入: $a為目標數組
輸出: 返回數組剩余元素
98.shuffle(): 將數組打亂,保留鍵名
$my_array = array("a" => "Dog", "b" => "Cat");
shuffle($my_array);
print_r($my_array);
輸入: 一個或多個數組
輸出: 順序打亂后的數組
99.count(): 計算數組中的單元數目或對象中的屬性個數
$people = array("Peter", "Joe", "Glenn", "Cleveland"); $result = count($people); echo $result;
輸入: 數組
輸出: 輸出元素個數
100.array_flip(): 返回一個鍵值反轉后的數組
$a=array(0=>"Dog",1=>"Cat",2=>"Horse");
print_r(array_flip($a));
輸出: 返回完成后的數組
101.array_keys(): 返回數組所有的鍵,組成一個數組
$a=array("a"=>"Horse","b"=>"Cat","c"=>"Dog");
print_r(array_keys($a));
輸出: 返回由鍵名組成的數組
102.array_values(): 返回數組中所有值,組成一個數組
輸出: 返回由鍵值組成的數組
103.array_reverse(): 返回一個元素順序相反的數組
元素順序相反的一個數組,鍵名和鍵值依然匹配
104.array_count_values(): 統計數組中所有的值出現的次數
$a=array("Cat","Dog","Horse","Dog");
print_r(array_count_values($a));
輸出: 返回數組原鍵值為新鍵名,次數為新鍵值
105.array_rand(): 從數組中隨機抽取一個或多個元素,注意是鍵名!!!
$a=array("a"=>"Dog","b"=>"Cat","c"=>"Horse");
print_r(array_rand($a,1));
$a為目標數組, 1為抽取第幾個元素的鍵名返回第1個元素的鍵名b
106.each(): 返回數組中當前的鍵/值對并將數組指針向前移動一步
調用array each ( array &$array )
在執行 each() 之后,數組指針將停留在數組中的下一個單元或者當碰到數組結尾時停留在最后一個單元。如果要再用 each 遍歷數組,必須使用 reset()。
返回值:
數組中當前指針位置的鍵/值對并向前移動數組指針。鍵值對被返回為四個單元的數組,鍵名為0,1,key和 value。單元 0 和 key 包含有數組單元的鍵名,1 和 value 包含有數據。
如果內部指針越過了數組的末端,則 each() 返回 FALSE。
107.array_unique(): 刪除重復值,返回剩余數組
$a=array("a"=>"Cat","b"=>"Dog","c"=>"Cat");
print_r(array_unique($a));
輸入: 數組
輸入: 返回無重復值數組,鍵名不變
108.sort(): 按升序對給定數組的值排序,不保留鍵名
$my_array = array("a" => "Dog", "b" => "Cat", "c" => "Horse");
sort($my_array);
print_r($my_array);
輸出: true/false
109.rsort(): 對數組逆向排序,不保留鍵名
110.asort(): 對數組排序,保持索引關系
111.arsort(): 對數組逆向排序,保持索引關
112.ksort(): 系按鍵名對數組排序
113.krsort(): 將數組按照鍵逆向排序
114.natsort(): 用自然順序算法對數組中的元素排序
115.natcasesort(): 自然排序,不區分大小寫
116.fopen(): 打開文件或者 URL
$handle = fopen("ftp://user:password@example.com/somefile.txt", "w");
調用: resource fopen ( string filename, string mode [, bool use_include_path [, resource zcontext]] )
返回值: 如果打開失敗,本函數返回 FALSE
117.fclose(): 關閉一個已打開的文件指針
$handle = fopen("somefile.txt", "r");
fclose($handle);
bool fclose(resource handle)
輸出: 如果成功則返回 TRUE,失敗則返回 FALSE
文件屬性
118.file_exists(): 檢查文件或目錄是否存在
$filename = "/path/to/foo.txt"; if (file_exists($filename)) { echo "exists";
} else { echo "does not exist";
}
調用: bool file_exists ( string filename )
輸入: 指定的文件或目錄
輸出: 存在則返回 TRUE,否則返回 FALSE
119.filesize(): 取得文件大小
$filename = "somefile.txt";echo $filename . ": " . filesize($filename) ."bytes";
調用: int filesize ( string $filename )
輸出: 返回文件大小的字節數,如果出錯返回 FALSE 并生成一條 E_WARNING 級的錯誤
120.is_readable(): 判斷給定文件是否可讀
$filename = "test.txt"; if (is_readable($filename)) { echo "可讀";
} else { echo "不可讀";
}
調用: bool is_readable ( string $filename )
輸出: 如果由 filename指定的文件或目錄存在并且可讀則返回 TRUE
121.is_writable(): 判斷給定文件是否可寫
$filename = "test.txt"; if (is_writable($filename)) { echo "可寫";
} else { echo "不可寫";
}
調用: bool is_writable ( string $filename )
filename 參數 可以是一個允許進行是否可寫檢查的目錄名
輸出:
如果文件存在并且可寫則返回 TRUE。
122.is_executable(): 判斷給定文件是否可執行
$file = "setup.exe"; if (is_executable($file)) { echo "可執行";
} else { echo "不可執行";
}
調用: bool is_executable ( string $filename )
輸出: 如果文件存在且可執行則返回 TRUE
123.filectime(): 獲取文件的創建時間
$filename = "somefile.txt";echo filectime($filename);
調用: int filectime ( string $filename )
輸出: 時間以 Unix 時間戳的方式返回,如果出錯則返回FALSE
124.filemtime(): 獲取文件的修改時間
$filename = "somefile.txt";echo filemtime($filename);
int filemtime ( string $filename )
輸出: 返回文件上次被修改的時間,出錯時返回 FALSE。時間以 Unix時間戳的方式返回
125.fileatime(): 獲取文件的上次訪問時間
$filename = "somefile.txt";echo fileatime($filename);
調用: int fileatime (string $filename)
輸出: 返回文件上次被訪問的時間, 如果出錯則返回FALSE. 時間以Unix時間戳的方式返回.
126.stat(): 獲取文件大部分屬性值
$filename = "somefile.txt";
var_dump(fileatime($filename));
調用: array stat (string $filename
輸出: 返回由 filename 指定的文件的統計信息
文件操作
127.fwrite(): 寫入文件
$filename = "test.txt"; $somecontent = "添加這些文字到文件
"; $handle = fopen($filename, "a");
fwrite($handle, $somecontent);
fclose($handle);
調用: int fwrite ( resource handle, string string [, int length] )
輸出:
把 string 的內容寫入 文件指針 handle 處。如果指定了 length,當寫入了length個字節或者寫完了string以后,寫入就會停止, 視乎先碰到哪種情況
128.fputs(): 同上
129.fread(): 讀取文件
<span style="font-size: 14px;"> $filename = "/usr/local/something.txt";$handle = fopen($filename, "r");$contents = fread($handle, filesize($filename));
fclose($handle);
調用: string fread ( int handle, int length )
從文件指針handle,讀取最多 length 個字節
130.feof(): 檢測文件指針是否到了文件結束的位置
$file = @fopen("no_such_file", "r"); while (!feof($file)) {
}
fclose($file);
調用: bool feof ( resource handle )
輸出: 如果文件指針到了 EOF 或者出錯時則返回TRUE,否則返回一個錯誤(包括 socket 超時),其它情況則返回 FALSE
131.fgets(): 從文件指針中讀取一行
$handle = @fopen("/tmp/inputfile.txt", "r"); if ($handle) { while (!feof($handle)) { $buffer = fgets($handle, 4096); echo $buffer;
}
fclose($handle);
}
調用: string fgets ( int handle [, int length] )
輸出: 從handle指向的文件中讀取一行并返回長度最多為length-1字節的字符串.碰到換行符(包括在返回值中)、EOF 或者已經讀取了length -1字節后停止(看先碰到那一種情況). 如果沒有指定 length,則默認為1K, 或者說 1024 字節.
132.fgetc(): 從文件指針中讀取字符
$fp = fopen("somefile.txt", "r"); if (!$fp) { echo "Could not open file somefile.txt";
} while (false !== ($char = fgetc($fp))) { echo "$char
";
}
輸入: string fgetc ( resource $handle )
輸出: 返回一個包含有一個字符的字符串,該字符從 handle指向的文件中得到. 碰到 EOF 則返回 FALSE.
133.file(): 把整個文件讀入一個數組中
$lines = file("http://www.example.com/");
// 在數組中循環,顯示 HTML 的源文件并加上行號。
foreach ($lines as $line_num => $line) { echo "Line #{$line_num} : " .
htmlspecialchars($line) . "
";
}
// 另一個例子將 web 頁面讀入字符串。參見 file_get_contents()。
$html = implode("", file("http://www.example.com/"));
調用: array file ( string $filename [, int $use_include_path [, resource $context ]] )
輸出: 數組中的每個單元都是文件中相應的一行,包括換行符在內。如果失敗 file() 返回 FALSE
134.readfile(): 輸出一個文件
調用: int readfile ( string $filename [, bool $use_include_path [, resource $context ]] )
輸出: 讀入一個文件并寫入到輸出緩沖。返回從文件中讀入的字節數。如果出錯返回 FALSE
135.file_get_contents(): 將整個文件讀入一個字符串
echo file_get_contents("http://www.baidu.com");
調用:
string file_get_contents ( string $filename [, bool $use_include_path [, resource $context [, int $offset [, int $maxlen ]]]] )
136.file_put_contents():將一個字符串寫入文件
file_put_contents("1.txt","aa");
調用: int file_put_contents ( string $filename , string $data [, int $flags [, resource $context ]] )
輸出: 該函數將返回寫入到文件內數據的字節數
137.ftell(): 返回文件指針讀/寫的位置
$fp=fopen("tx.txt","r");
fseek($fp,10); echo ftell($fp);
fread($fp,4); echo ftell($fp);
調用: int ftell ( resource $handle )
輸出: 返回由 handle 指定的文件指針的位置,也就是文件流中的偏移量
138.fseek(): 在文件指針中定位
$fp=fopen("tx.txt","r");
fseek($fp,10); echo ftell($fp);
fread($fp,4); echo ftell($fp);
調用: int fseek ( resource $handle , int $offset [, int $whence ] )
輸出: 成功則返回 0;否則返回 -1
139.rewind(): 倒回文件指針的位置
$fp=fopen("tx.txt","r");
fseek($fp,3); echo ftell($fp);
fread($fp,4);
rewind($fp); echo ftell($fp);
調用: bool rewind ( resource $handle )
返回值: 如果成功則返回 TRUE,失敗則返回 FALSE
140.flock(): 輕便的執行文件鎖定
$fp=fopen("tx.txt","r");
flock($fp, LOCK_SH);//共享鎖
//flock($fp, LOCK_EX);//獨立鎖,寫文件時用它打開
//flock($fp, LOCK_NB);//附加鎖
flock($fp, LOCK_UN);//釋放鎖
fclose($fp);
調用: bool flock ( int $handle , int $operation [, int &$wouldblock ] )
輸出: 如果成功則返回 TRUE,失敗則返回 FALSE
141.basename(): 返回路徑中的文件名部分
path = "/home/httpd/html/index.php"; $file = basename($path); $file = basename($path,".php");
調用: string basename ( string $path [, string $suffix ])
輸出: 給出一個包含有指向一個文件的全路徑的字符串,本函數返回基本的文件名。如果文件名是以 suffix 結
束的,那這一部分也會被去掉
142.dirname(): 返回路徑中的目錄部分
$path = "/etc/passwd"; $file = dirname($path);
調用: string dirname ( string $path )
輸出: 給出一個包含有指向一個文件的全路徑的字符串,本函數返回去掉文件名后的目錄名
143.pathinfo(): 返回文件路徑的信息
echo "";
print_r(pathinfo("/www/htdocs/index.html")); echo "
";
調用: mixed pathinfo ( string $path [, int $options ] )
返回一個關聯數組包含有 path 的信息
144.opendir(): 打開目錄句柄
$fp=opendir("E:/xampp/htdocs/php/study/19");echo readdir($fp);
closedir($fp);
調用: resource opendir ( string $path [, resource $context ] )
返回值: 如果成功則返回目錄句柄的 resource,失敗則返回FALSE
145.readdir(): 從目錄句柄中讀取條目
$fp=opendir("E:/xampp/htdocs/php/study/19");echo readdir($fp);
closedir($fp);
調用: string readdir ( resource $dir_handle )
返回值: 返回目錄中下一個文件的文件名。文件名以在文件系統中的排序返回
146.closedir(): 關閉目錄句柄
$fp=opendir("E:/xampp/htdocs/php/study/19"); echo readdir($fp);
closedir($fp);
調用: void closedir ( resource $dir_handle )
關閉由 dir_handle 指定的目錄流。流必須之前被opendir() 所打開
147.rewinddir() : 倒回目錄句柄
$fp=opendir("E:/xampp/htdocs/php/study/19"); echo readdir($fp)."
"; echo readdir($fp)."
"; echo readdir($fp)."
";
rewinddir($fp); echo readdir($fp)."
";
closedir($fp);
調用: void rewinddir ( resource $dir_handle )
輸出: 將 dir_handle 指定的目錄流重置到目錄的開頭
148.mkdir(): 新建目錄
mkdir("123");
調用: bool mkdir ( string $pathname [, int $mode [, bool $recursive [, resource $context ]]] )
輸出: 嘗試新建一個由 pathname 指定的目錄
149.rmdir(): 刪除目錄
rmdir("123");
調用: bool rmdir ( string $dirname )
輸出: 嘗試刪除 dirname 所指定的目錄。目錄必須是空的,而且要有相應的權限。如果成功則返回TRUE,失敗則返回 FALSE
150.unlink(): 刪除文件
unlink("123/1.txt");
rmdir("123");
調用: bool unlink ( string $filename )
輸出: 刪除 filename 。和 Unix C 的 unlink() 函數相似。如果成功則返回 TRUE,失敗則返回 FALSE
151.copy(): 拷貝文件
copy("index.php","index.php.bak");
調用: bool copy ( string $source , string $dest )
輸出: 將文件從 source 拷貝到 dest. 如果成功則返回TRUE,失敗則返回 FALSE
152.rename(): 重命名一個文件或目錄
rename("tx.txt","txt.txt");
調用: bool rename ( string $oldname , string $newname [, resource $context ] )
輸出: 如果成功則返回 TRUE,失敗則返回 FALSE
文件的上傳與下載
153.is_uploaded_file():判斷文件是否是通過 HTTP POST上傳的
if(is_uploaded_file($_FILES["bus"]["tmp_name"])){ if( move_uploaded_file($_FILES["bus"]["tmp_name"], $NewPath) ){ echo "上傳成功
";
}else{ exit("失敗");
}
}else{ exit("不是上傳文件");
}
調用: bool move_uploaded_file ( string $filename , string
時間函數155.time(): 返回當前的 Unix 時間戳time();
調用: int time ( void )
輸出: 返回自從 Unix 紀元(格林威治時間 1970 年 1 月 1 日 00:00:00)到當前時間的秒數
156.mktime(): 取得一個日期的 Unix 時間戳
mktime(0, 0, 0, 4, 25, 2012);
調用: int mktime ([ int $hour [, int $minute [, int $second [, int $month [, int $day [, int $year [, int $is_dst ]]]]]]] )
156.date(): 格式化一個本地時間/日期
date("Y年m月d日 H:i:s");
調用: string date ( string $format [, int $timestamp ] )
輸出: 2016年09月10日 20:45:54
157.checkdate(): 驗證一個格里高里日期
調用: bool checkdate ( int $month , int $day , int $year)
輸出: 如果給出的日期有效則返回 TRUE,否則返回 FALSE
if(checkdate(6,31,2012)){ echo "成立";
}else{ echo "不成立";
}
158.date_default_timezone_set(): 設定用于一個腳本中所有日期時間函數的默認時區
date_default_timezone_set("PRC");
調用: bool date_default_timezone_set ( string $timezone_identifier)
返回值: 如果 timezone_identifier 參數無效則返回 FALSE,否則返回 TRUE。
159.getdate(): 取得日期/時間信息
調用: array getdate ([ int $timestamp ] )
輸出: 返回一個根據timestamp得出的包含有日期信息的關聯數組。如果沒有給出時間戳則認為是當前本地時間
$t=getdate();
var_dump($t);
160.strtotime(): 將任何英文文本的日期時間描述解析為 Unix 時間戳
echo strtotime("now");
int strtotime ( string $time [, int $now ] ) echo strtotime("10 September 2000"); echo strtotime("+1 day"); echo strtotime("+1 week"); echo strtotime("+1 week 2 days 4 hours 2 seconds"); echo strtotime("next Thursday"); echo strtotime("last Monday");
161.microtime(): 返回當前 Unix 時間戳和微秒數
調用: mixed microtime ([ bool $get_as_float ] )
$start=microtime(true);
sleep(3); $stop=microtime(true); echo $stop-$start;
其他常用:
162.intval(): 獲取變量的整數值
調用: int intval ( mixed $var [, int $base = 10 ] )
通過使用指定的進制 base 轉換(默認是十進制),返回變量 var 的 integer 數值。 intval() 不能用于 object,否則會產生 E_NOTICE 錯誤并返回 1。
var: 要轉換成 integer 的數量值
base: 轉化所使用的進制
返回值: 成功時返回 var 的 integer 值,失敗時返回 0。 空的 array 返回 0,非空的 array 返回 1。
163.sprintf(): 函數把格式化的字符串寫入一個變量中
語法
sprintf(format,arg1,arg2,arg++)
參數 描述
format 必需。轉換格式。
arg1 必需。規定插到 format 字符串中第一個 % 符號處的參數。
arg2 可選。規定插到 format 字符串中第二個 % 符號處的參數。
arg++ 可選。規定插到 format 字符串中第三、四等等 % 符號處的參數。
說明
參數 format 是轉換的格式,以百分比符號 (“%”) 開始到轉換字符結束。下面的可能的 format 值:
%% - 返回百分比符號
%b - 二進制數
%c - 依照 ASCII 值的字符
%d - 帶符號十進制數
%e - 可續計數法(比如 1.5e+3)
%u - 無符號十進制數
%f - 浮點數(local settings aware)
%F - 浮點數(not local settings aware)
%o - 八進制數
%s - 字符串
%x - 十六進制數(小寫字母)
%X - 十六進制數(大寫字母)
arg1, arg2, ++ 等參數將插入到主字符串中的百分號 (%) 符號處。該函數是逐步執行的。在第一個 % 符號中,插入 arg1,在第二個 % 符號處,插入 arg2,依此類推。
提示和注釋
注釋:如果 % 符號多于 arg 參數,則您必須使用占位符。占位符插到 % 符號后面,由數字和 “$” 組成。請參見例子 3。
提示:相關函數:fprintf()、printf()、vfprintf()、vprintf() 以及 vsprintf()。
例子
例子 1
輸出:
Hello world. Day number 123
164.PDO類的相關函數
prepare()
execute()
fetch()
Database CODINGGROUND Connected";
}catch(PDOException $e){ echo "" . $e->getMessage() . "
";
}$sql = "SELECT * FROM users";$stmt = $conn->prepare($sql);$stmt->execute();echo "
";while($row = $stmt->fetch(PDO::FETCH_ASSOC)){ echo ""; foreach($row as $value)
{ echo sprintf("%s ", $value);
} echo " ";
}echo "
";?>
165.isset(): 檢測變量是否設置。
原型格式: bool isset ( mixed var [, mixed var [, ...]] )
返回值:
若變量不存在則返回 FALSE
若變量存在且其值為NULL,也返回 FALSE
若變量存在且值不為NULL,則返回 TURE
同時檢查多個變量時,每個單項都符合上一條要求時才返回 TRUE,否則結果為 FALSE
如果已經使用 unset() 釋放了一個變量之后,它將不再是 isset()。若使用 isset() 測試一個被設置成 NULL 的變量,將返回 FALSE。同時要注意的是一個 NULL 字節(”“)并不等同于 PHP 的 NULL 常數。
$userInfo=’abc’;if(isset($userInfo["account"])) {$account=$userInfo["account"];
} else {$account=$userInfo;
}
166.unset(): 銷毀指定的變量。
函數原型: unset(var1,var2,...)
參數 描述
var1 要銷毀的變量1
var2 要銷毀的變量2
$foo = "php unset()"; unset ($foo); echo $foo;?>
167.preg_replace_callback: 執行一個正則表達式搜索并且使用一個回調進行替換.
原型:
mixed preg_replace_callback ( mixed $pattern , callable $callback , mixed $subject [, int $limit = -1 [, int &$count ]] )
這個函數的行為除了 可以指定一個 callback 替代 replacement 進行替換 字符串的計算,其他方面等同于 preg_replace()。
pattern: 要搜索的模式,可以使字符串或一個字符串數組。
callback: 一個回調函數,在每次需要替換時調用,調用時函數得到的參數是從subject 中匹配到的結果。回調函數返回真正參與替換的字符串。這是該回調函數的簽名:
string handler ( array $matches )
你可能經常會需要callback函數而僅用于preg_replace_callback()一個地方的調用。在這種情況下,你可以 使用匿名函數來定義一個匿名函數作為preg_replace_callback()調用時的回調。 這樣做你可以保留所有 調用信息在同一個位置并且不會因為一個不在任何其他地方使用的回調函數名稱而污染函數名稱空間。
subject: 要搜索替換的目標字符串或字符串數組。
limit: 對于每個模式用于每個 subject 字符串的最大可替換次數。 默認是-1(無限制)。
count: 如果指定,這個變量將被填充為替換執行的次數。
s*w|", function ($matches) {
return strtolower($matches[0]);
}, $line
); echo $line;
}
fclose($fp);?>
返回值:
如果subject是一個數組, preg_replace_callback()返回一個數組,其他情況返回字符串。 錯誤發生時返回 NULL。
如果查找到了匹配,返回替換后的目標字符串(或字符串數組), 其他情況subject 將會無變化返回。
168.json_encode(): 對變量進行 JSON 編碼
函數原型: json_encode(value,option)
參數 描述
value 必填。待編碼的 value ,除了resource 類型之外,可以為任何數據類型。該函數只能接受 UTF-8 編碼的數據
options 可選。
JSON_HEX_QUOT 把雙引號轉為u0022(php 5.3)
JSON_HEX_TAG 把< > 轉為 u003C 和 u003E(php 5.3)
JSON_HEX_AMP 把 & 轉為 u0026(php 5.3)
JSON_HEX_APOS 把單引號轉為 u0027.(php 5.3)
JSON_NUMERIC_CHECK 把數字字符串當作數字編碼(php 5.3)
JSON_PRETTY_PRINT 使用空格格式化數據(php 5.4)
JSON_UNESCAPED_SLASHES 不忽略 /(php 5.4)
JSON_FORCE_OBJECT 使用非關聯數組時輸出一個對象而不是一個數組(php 5.3)
JSON_UNESCAPED_UNICODE 逐字編譯多字節字符(php 5.4)
1,"b"=>2,"c"=>3,"d"=>4,"e"=>5);echo json_encode($arr);?>
以上例程會輸出:
1
{"a":1,"b":2,"c":3,"d":4,"e":5}
169.iconv(): 用于按規定的字符編碼轉換字符串。mb_convert_encoding() 函數也可以轉換編碼。
如果發現中文輸出亂碼的時候,很可能就需要使用此函數做處理。
函數原型: iconv(in_charset ,out_charset ,str )
參數 描述
in_charset 輸入的字符集。
out_charset 輸出的字符集。如果你在 out_charset 后添加了字符串 //TRANSLIT,將啟用轉寫(transliteration)功能。這個意思是,當一個字符不能被目標字符集所表示時,它可以通過一個或多個形似的字符來近似表達。 如果你添加了字符串 //IGNORE,不能以目標字符集表達的字符將被默默丟棄。 否則,str 從第一個無效字符開始截斷并導致一個 E_NOTICE。
str 要轉換的字符串。
輸出:
Original : This is the Euro symbol "€
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/29960.html
摘要:常用三角函數前面我們簡單的介紹了三角函數的表示方法以及的坐標系統??偨Y這節你應該學會了如何運用三角函數,控制物體的旋轉。 本節主要內容有: 三角函數介紹 常用三角函數解析 鼠標跟隨角度旋轉 看到三角函數,勾股定理這樣的數學名詞是不是有種雙腿打顫的感覺?。『冒?,就算你已經嚇尿了,也不能否認我們中學學習的知識終于有了用武之地,挽起袖子,開整!??! 1、三角函數 什么是三角函數呢?簡單的...
摘要:常用三角函數前面我們簡單的介紹了三角函數的表示方法以及的坐標系統。總結這節你應該學會了如何運用三角函數,控制物體的旋轉。 本節主要內容有: 三角函數介紹 常用三角函數解析 鼠標跟隨角度旋轉 看到三角函數,勾股定理這樣的數學名詞是不是有種雙腿打顫的感覺啊!好吧,就算你已經嚇尿了,也不能否認我們中學學習的知識終于有了用武之地,挽起袖子,開整!!! 1、三角函數 什么是三角函數呢?簡單的...
摘要:為系統增加的第一行代碼不會影響該腳本在下的運行,因此您也可以用該方法編寫跨平臺的腳本程序。指定會話頁面在客戶端中的有限期分鐘缺省下為分鐘。最原始的博主沒有找到,只能在此聲明,特為轉載。 這幾天需要用PHP寫一個定時抓取網頁的服務器應用. 在網上搜了一下解決辦法, 發現OSchina的 一個問題的解答很精彩(值得一看,謝謝大牛們的精彩回答O(∩_∩)O~), 提出幾種解決辦法.現總結如下...
摘要:計算精度與谷歌地圖的距離精度差不多,相差范圍在米以下。以上代碼大部分來自網上收集,經過驗證過的,可以使用 根據經緯度計算距離公式 showImg(https://segmentfault.com/img/bV6zX2?w=437&h=76); 圖片來自互聯網 對上面的公式解釋如下: Lung1 Lat1表示A點經緯度, Lung2 Lat2表示B點經緯度; a=Lat1 – Lat2...
閱讀 3160·2021-11-19 09:40
閱讀 3647·2021-11-16 11:52
閱讀 2980·2021-11-11 16:55
閱讀 3171·2019-08-30 15:55
閱讀 1177·2019-08-30 13:08
閱讀 1656·2019-08-29 17:03
閱讀 3012·2019-08-29 16:19
閱讀 2579·2019-08-29 13:43