php的基礎操作

來源:互聯網
上載者:User

這篇文章主要介紹了關於php的基礎操作,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

php基礎知識

數組函數

  • count($arr) 計算數組的元素個數

  • print_r($arr) 列印數組

  • 迭代數組

    • for 索引遍曆

    • foreach() 迭代數組

    • foreach(

      item){} 遍曆數組的值

    • foreach(

      key=>$value) 遍曆數組的鍵和值

  • 數組排序

    • sort(); 順序排序 會清除索引 rsort() ;倒敘排序

    • asort(); 按照value排序 不清索引 arsort() ;

    • ksort(); 按照索引排序 不清索引 krsort();

    • shuffle();隨機排序

    • array_reverse(); 將原來的元素順序反向

  • 數組指標操作

    • reset(); 將數組指標指向第一個元素

    • end(); 數組指標指向最後一個元素

    • next(); 數組指標向後一位

    • prev(); 數組指標向前一位

    • current(); 返回指標指向的當前元素

  • 數組的其他簡單操作

    • 數組對變數賦值

    • list(

      item1) = array(‘ha’,’haha’,’hahaha’);直接數組前兩個元素賦值給變數

    • 快速建立數組

    • range(2,10,2) 建立一個2到10的數組 每個元素跨度為2

    • 壓入彈出數組中的元素

    • array_push($arr,’ha’,’haha’)將元素填入數組中

    • array_pop($arr)會將數組的最後一個元素彈出 且指標直接跳到第一個元素

    • 改變數組索引的大小寫

    • array_change_key_case($arr,CASE_UPPER/CASE);

    • 擷取數組之間的交集

    • arr1,$arr2) value一樣的交集

    • arr1,$arr2 值和索引都要一樣

    • 交換數組的索引和元素

    • array_filp($arr) ;

    • 快速填入數組元素

    • array_file(2,10,’haha’) 為2-10的索引填充一個值

    • 計算元素在數組中的出現次數

    • array_count_values($arr) 產生一個數組 統計數組中的元素各出現了幾次

    • 判斷數組中的索引是否存在

    • array_key_exists(‘haha’,$arr)

    • 擷取數值中的索引

    • array_key($arr)

    • 將數組中的每個元素遍曆執行方法

    • array_map(‘cube’//方法名,$arr);

    • 其他函數

    • in_array(‘haha’,$arr); 判斷一個值是否存在在數組中

    • key(‘haha’,$arr); 擷取當前元素的索引

字串處理

  • 字串分割合并

    • explode(‘,’,$str,2//分割的段數) 分割字串為數組

    • implode(‘,’,$arr) 將數組元素銜接成字串

  • 字串的比較與替換

    • strcmp(

      str2) 比較兩個字串是否相同 返回bool值

    • str_replace(‘str’//被替換的內容,

      str2被替換的字串);替換部分內容

    • str_replace(‘haha’,

      str2) 單內容個替換

    • str-replace(

      arr2,$str) 替換多個字詞,兩個數組一一對應替換

  • print($str) 輸出列印字串

  • 字串格式化

    • %d 轉換成十進位

    • %b 轉換成二進位

    • %1.2f 轉換成浮點數 且保留兩位小數

    • %c 轉換成對應的ASCLL碼

    • %s轉換成字串

    • sprintf(‘haha%shahahah%dahahahah’,’haha’,123)

    • 預留位置

  • substr(

    num1,$num2) 截取一段字串

  • 去除字串的空白字元’

    • trim($str) 去除字串開頭結尾空白字元

    • ltrim($str)去除字串開頭的空白字元

    • rtrim($str) 去除字串後面的空白字元

  • 轉換字元的大小寫

    • strtoupper($str)轉大寫

    • strtolower($str) 轉小寫

  • 阻止字串中的html的標籤編譯 < -> &it

    • htmlentities($str)

  • 恢複字串中的標籤編譯 &it -> <

    • html_entity_decode($str);

  • str_repeat($str,3); 重複產生一個字串

  • str_pad($str,10,”*”,STR_PAD_BOTH/LEFT/RIGHT) 通過重複某一字串來 補全字串長度

  • str_split($str,3) 分割字元成數組, 不設長度 ,預設分割成單個字元

  • 字串散列加密

    • md5($str1);

    • sha1($str1);

操作目錄和檔案

目錄操作

  • 開啟關閉目錄

    • path)開啟目錄 獲得控制代碼

    • closedir($dh) 完成檔案操作關閉控制代碼 釋放資源

  • 擷取目錄中下一個 目錄中的檔案名稱 readdir($dh); 參數為控制代碼

    • 輸出順序 ./../下面按檔案首字元排序

    • 擷取目錄下的所有檔案並放入數組 scandir($path) 參數為路徑

  • 修改當前php檔案的位置

    • getcwd()擷取當前php的路徑

    • chcwd($path) 修改當前php的路徑

檔案操作

  • 開啟關閉檔案

    • r 唯讀從頭開始

    • r+ 讀寫從頭開始

    • w 唯寫清空檔案 從頭開始 沒有檔案 建立檔案

    • w+ 讀寫清空檔案 從頭開始 沒有檔案 建立檔案

    • a 唯寫 從尾部開始 沒有就建立

    • a+ 讀寫 從尾部開始 沒有就建立

    • fopen(

      mode); 開啟檔案 擷取控制代碼

    • mode而開啟檔案的模式

    • close($fp); 關閉檔案控制代碼 釋放資源

  • 讀取檔案

    • feof($fp) 判斷是否到檔案結尾

    • fgets($fp,10);讀取檔案的一行 ,有第二個參數則擷取第二個參數的長度

    • 讀取整個檔案

    • readfile($path)返回整個檔案的位元組數

    • file($path)返回一個數組 每個元素是每行的內容

    • get_file_content 返回整個檔案的內容

  • 寫入檔案

    • fwrite(

      str,$length) 寫入檔案內絨

    • file_put_contents(

      content) 相當於 fopen; fwrite(); fclose();三合一

  • 擷取檔案的相關資訊

    • fileowner($path) ; 返迴文件所有者`

    • filesize($path)擷取檔案大小

    • filetype($path)擷取檔案類型

  • 判斷檔案的性質的函數

    • is_dir($path)判斷路徑是不是檔案夾

    • is_file($path)判斷路徑是不是檔案

    • is_readable($path) 判斷檔案是否可讀

    • is_wirtable($path)判斷檔案是否是可寫

  • 擷取路徑的檔案名稱和目錄名

    • basename($path) 擷取檔案名稱

    • dirname($path)擷取目錄檔案夾的名字

  • file_exists($path) 判斷檔案是否存在

  • 建立刪除檔案夾

    • mkdir($path); 建立檔案夾

    • rmdir($path); 刪除檔案夾

  • 建立刪除賦值檔案夾

    • copy(

      path2)複製檔案到指定路徑

    • unlink($path)刪除檔案

    • rename(

      path2)移動檔案

  • 檔案處理的鎖定(防止多個使用者同時寫入)

  • flock($fp,[LOCK_EX]); 寫鎖定 只能單個人寫入

    • flock($fp,[LOCK_UN]); 釋放鎖定

  • 變更檔屬性

    • chgrp(

      group)變更檔的組

    • chmod($file,0777) 變更檔模式

    • chown($path,’root’); 變更檔的所有者

  • 擷取檔案時間屬性 返回時間戳記

    • filetime($path)返回上次訪問時間

    • filemtime($path)返回上次檔案修改的時間

    • filectime($path) 返回上次被inode修改的時間

  • fgetss($path);通過http協議擷取檔案 且擷取內容過濾掉html標籤

  • 在一個php檔案中引入另一個php 類似js檔案的引入

    • include($path);引入檔案 檔案丟失只會警告

    • require($path);引入檔案 檔案丟失整個程式出錯

處理日期和時間

格式化日期和時間

  • date(‘Y-m-d H:i:s’); 格式化實踐日期

  • 格式化字元

    • Y 年

    • m月

    • d 日

    • D 星期

    • H 小時

    • i 分

    • s 秒

    • ….

  • UNIX時間戳記 (從1970年1月1日0時開始的計算的秒數)

    • mktime(

      minute,

      month,

      year) 參數省略 就是當前的時間

    • date(‘M-d-Y’,mktime(….));將時間戳記轉換成日分秒…

  • 擷取各個時間全部各個部分的資訊 填入數組 並返回數組

    • getdate([mktime(…)])擷取當前的時間資訊 或時間戳記的時間資訊

    • checkdate(

      day,$year) 判斷是否有效

對於URL和HTTP處理

url地址分析

  • urlencode($str) 對於url進行編碼 就是將url中的非數字和非字母轉成 %xx 兩位十六進位數

  • urldecode($str);將其中的%xx 轉換成原來的字元

  • parse_url($url) 返回一個數組 內部包含url的各個資訊

    • scheme 協議

    • host 主機ip地址和網域名稱

    • port 連接埠號碼

    • pass 使用者名稱

    • pass 使用者密碼

    • path 訪問路徑

    • query 查詢參數 就是更在url後面的資訊

    • fragment 參數片段

產生HTTP頭

  • header($str) 標題 用於說明伺服器通訊的過程和通訊時間 必須在一切實際輸出的前面

  • 擷取的預定義的變數 擷取頭資訊

    • $_SERVER 所有伺服器頭資訊 數組

    • $_HTTP_HOST http主機

    • $_SERVER_NAME 伺服器名稱

    • $_SERVER_ADDR 伺服器位址

    • $_SERVER_PORT 伺服器連接埠

    • $_SERVER_PROTOCOL 伺服器協議

產生使用cookie

  • setcookie(name //cookie名,[value//cookie的值,exprire//cookie到期時間,path//有效路徑,domain//有效網域名稱,secure//https安全傳輸時有效]) 產生cookie

  • $_COOKIE[‘cookiename’] 擷取cookie

  • setcookie(‘mycookie[love]’,’yisayu’); 產生數組cookie

  • setcookie(‘mycookie’,’yisayu’,time() + 60*60)/mktime(0,12,12,45,2017);設定cookie有效期間 當前1小時後 cookie失效 不設定或者設定為0 既關閉瀏覽器時cookie失效

  • cookie預設會回送到同一目錄下的頁面 如果想要回送到非同一目錄下的頁面

    • setcookie(‘mycookie’,’yisayu’,0,’/user/’);會被回送到user目錄下的所有頁面

  • setcookie(‘mycookie’,”) 刪除cookie

數學運算

常見數學運算

  • abs($num) 絕對值

  • ceil($num) 天花板

  • floor($num)地板

  • sqrt($num) 平方根

  • round($num,1) 四捨五入 第二個參數保留幾位小數的四捨五入

進位轉換

  • decbin($num) 十 到 二

  • dechex($num) 十 到 十六

  • decoct($num) 十 到 八

  • bindec($num) 二 到 十

  • octdec($num)八 到 十

  • base_convert($num,16,2) 將num從form的進位轉換到to的進位

產生隨機數

  • mt-rand(

    max) 產生隨機數

獲得系統資訊

擷取添加php的環境變數

  • 擷取php環境變數 與 $_SERVER 效果一樣

    • getenv(‘DOCUMENT_ROOT’) 環境變數 就是檔案根目錄

    • getenv(‘SCRIPT_NAME’)當前檔案

    • …..

  • putenv(‘NAME=$env_var’);

查看載入的模組

  • get_load_extensions() 返回數組

  • get_load_extensions_funcs($moudle) 返回一個指定模組 資訊

擷取php的各類資訊

  • phpinfo(); 擷取當前php的各類資訊

  • getmypid() 返回當前的的pid號

  • get_current_user()返回當前程式的所有者的名稱

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.