PHP常用函數總結

来源:http://www.cnblogs.com/will8023/archive/2016/08/29/5818887.html
-Advertisement-
Play Games

一般來說,字元串、數組、資料庫類的函數是相對來使用比較多的類別。// 時間日期 //y返回年最後兩位,Y年四位數,m月份數字,M月份英文。d月份幾號數字,D星期幾英文$date=date("Y-m-d");//include,include_once.require,require_once//re ...


一般來說,字元串、數組、資料庫類的函數是相對來使用比較多的類別。


//===============================時間日期============================

//y返回年最後兩位,Y年四位數,m月份數字,M月份英文。d月份幾號數字,D星期幾英文
$date=date("Y-m-d");

//include,include_once.require,require_once
//require("file.php") 在PHP程式執行前就會先讀入require所指定引進的文件,如出現錯誤是致命的。
//include("file.php") 可以放在PHP程式的任何位置,PHP程式執行到時才讀入include指定引入的文件,如出現錯誤會提示

//===============================輸出列印===============================
//sprintf("%d","3.2") ;//只格式化,返回格式化後的字元串,不輸出。
//printf("%d","3.2") ;//即格式化,又輸出
//print("3.2") ;//只輸出
//echo "nihao","aa";//可以輸出多個字元串
//print_r(array("a","b","c"));//將數組的鍵值與元素依次顯示

//===============================常用字元串函數===============================

//獲取字元串長度,有多少個字元,空格也算
$str=" sdaf sd ";
$len=strlen($str);

//用第一個參數里的字元串,把後面數組裡的每個元素連接起來,返回一個字元串。
$str=implode("-",array("a","b","c"));

//字元串分割方法,返回一個數組,用第一個參數里的字元分割後面的字元串,指定字元的前後和之間都截取,如果指定字元在開頭或結尾則返回的數組開頭或結尾的元素為空字元串
//沒有分割到字元串就返回給數組對應元素一個空值。最後一個限制返回數組長度,可不限制,則一直分割下去。
$array=explode("a","asddad addsadassd dasdadfsdfasdaaa",4);
//print_r($array);

//剔除字元串左邊開頭的空格,並返回
//如有第二個參數則是剔除左邊開頭的空格換成剔除第二個參數里的字元串
$str=ltrim("a asd ","a");

//剔除字元串右邊開頭的空格
$str=rtrim(" asd ");

//把第一個字元串兩邊以第二個參數開頭的字元串剔除。如沒有第二個參數,預設剔除掉字元串兩邊開頭的空格
$str=trim(" sdsdfas ","a");

//從字元串第一個參數里的指定位置開始取多長(多少個)字元,字元串中第一個字元位置從0算。
//如果第二個參數為負則從字元串結尾倒數第幾個開始取多長的字元串。結尾最後一個字元算-1,截取方向總是從左到右
$str=substr("abcdefgh",0,4);

//將第三個參數的第一個參數字元串用參數二字元串替換
$str=str_replace("a","","abcabcAbca");
//與str_replace用法同,只是不區分大小寫
//$str=str_ireplace("a"," ","abcabcAbca");

//返回括弧里字元串的字元全部大寫的字元串
$str=strtoupper("sdaf");

//將括弧里第一個字元串變成大寫後返回
$str=ucfirst("asdf");

//用echo等將括弧里字元串列印在網頁上時原汁原味列印出括弧里的字元串,包括標簽字元
$str=htmlentities("<br/>");

//返回第二個參數字元串在第一個字元串里出現的次數
$int=substr_count("abcdeabcdeablkabd","ab");

//返回第二個字元串在第一個字元串第一次出現的位置,第一個字元位置算0
$int=strpos("asagaab","ab");

//返回第二個字元串在第一個字元串最後一次出現的位置,第一個字元位置算0
$int=strrpos("asagaabadfab","ab");

//截取返回參數一中從左至右第一個出現的參數二到參數一最後一個字元的字元串
$str=strstr("sdafsdgaababdsfgs","ab");

//截取返回參數一中從左至右最後一個出現的參數二到參數一最後一個字元的字元串
$str=strrchr("sdafsdgaababdsfgs","ab");

//將參數二中每一個字元在參數一中相同字元前加"\"
$str=addcslashes("abcdefghijklmn","akd");

//將參數一的字元串填充到參數二指定的長度(單字元個數),參數三為指定填充的字元串,不寫預設空格
//參數四填充位置,0在參數一左側開頭填充,1右側開頭,2兩邊開頭同時。不寫預設在右側開頭填充
$str=str_pad("abcdefgh",10,"at",0);

//依次比較兩字元串對應字元阿斯克碼值,第一對不一樣的,如果參數一里大於參數二里的返回1,反之返回-1,兩字元串完全一樣返回0
$int1=strcmp("b","a");

//返回第一個參數格式化後的數字格式,第二個參數為保留幾個小數,參數三為將小數點換成參數三,參數四為整數部分每三位用什麼字元分割
//後面三個參數都不寫,則預設去掉小數部分,整數每隔三位用逗號,分割。參數三,參數四必須同時存在
$str=number_format(1231233.1415,2,"d","a");

//===============================常用數組方法===============================

$arr=array("k0"=>"a","k1"=>"b","k2"=>"c");

//返回數組元素個數
$int=count($arr);

//判斷第二參數的數組元素中是否有第一個參數元素
$bool=in_array("b",$arr);

//返回括弧中數組所有鍵值組成的新數組原數組不改變
$array=array_keys($arr);

//判斷第二個參數的數組中是否有第一個參數的鍵值,返回真假
$bool=array_key_exists("k1",$arr);

//返回原數組中所有元素值組成的新數組,鍵值從0開始自增,原數組不變
$array=array_values($arr);

//返回當前數組指針指向的鍵值
$key=key($arr);

//返回當前數組指針指向的元素值
$value=current($arr);

//返回當前數組指針指向元素的鍵值及元素值組成的數組,再將指針推向下一位,最後指針指向的是一個空元素返回空
//返回的數組中有四個固定鍵值對應的元素值分別是返回元素的鍵值及元素值,其中0,'key'鍵值都對應返回元素鍵值,1,'value'鍵值都對應返回的元素值
$array=each($arr);

//先將數組指針推向下一位,再返回指針移動後指向的元素值
$value=next($arr);

//將數組指針推向上一位,再返回指針移動後指向的元素值
$value=prev($arr);

//讓數組指針重置指向第一個元素並返回元素值
$value=reset($arr);

//將數組指針指向最後一位元素,並返回最後一位元素值
$value=end($arr);

//將第一個參數以後的參數作為元素追加入第一個參數數組的末尾,索引從最小的沒用過的數值開始計,返回之後的數組長度
$int=array_push($arr,"d","dfsd");

//將第一個參數數組後面所有參數作為元素添加到第一個參數數組開頭處,鍵值以0從第一個元素處重新累加,原非數值的鍵值保持不變,原元素排序位置不變,返回之後的數組長度
$int=array_unshift($arr,"t1","t2");

//返回從數組尾部提取最後一個元素值,並把最後一個元素從原數組中剔除
$value=array_pop($arr);

//array_pop相反,提取返回數組頭一個元素值,並把頭一個元素從原數組中剔除
$value=array_shift($arr);

//讓第一個參數數組達到第二個參數數值長度,將第三個參數作為元素添加到第一個參數數組的末尾,索引從最小沒用過數值開始計並返回,原數組不改變
$array1=array_pad($arr,10,"t10");

//返回一個將原數組中多餘重覆元素剔除掉的新數組,原數組不改變
$array=array_unique($array1);

//將原數組鍵值打破重新以元素值的阿斯克碼值從小到大排序,索引從數字0開始重計
$int=sort($array);

//和sort相反,以元素值阿斯柯碼值大小降序重新排序,索引從0重新計
$int=rsort($array);

//返回將第一個參數數組中每一個元素值依次作為鍵值付給參數二數組的數組,兩數組長度必須一致,原數組不改變
$array=array_combine(array("a","b","c","d","e"),$arr);

//將兩個數組合併並返回原數組不變
$array=array_merge($arr,array("a","b","c"));

//在第一個參數數組中從第二個參數數值位置開始截取到第三個參數數值長度的數組鍵值+元素並返回,數組第一個元素位置從0計
$array=array_slice($arr,2,1);

//截取功能和array_slice()一樣,只是將截取部分在原數組中剔除
$array=array_splice($arr,2,1);

//將第一個參數作為第一個元素,每次自增參數三的值,自增後再作為一個元素存在數組中,直到值達到參數二的值存到數組中為止並返回這個數組
//參數一,參數二可以是數字,可以是單個字元,單字元就按阿斯柯碼值算,第三個參數不寫預設每次自增1
$array=range(3,9,2);

//將原數組元素與對應鍵值的對應關係重新隨機排列返回真假
$bool=shuffle($arr);

//計算數組中所有數值型元素值的和
$int=array_sum(array("a",2,"cssf"));

//把一個數組分割為新的數組塊,新數組每個元素都是一個數組,新數組每個元素內有幾個元素由參數二決定
//第三個參數決定元素的鍵值是否保留原鍵值可不寫,true為保留,預設false不保留
$array=array_chunk(array("a"=>"a","b","c","d","e","f","g","h"),2,true);


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • C 預處理器不是編譯器的組成部分,是編譯過程中一個單獨的步驟。C預處理器只是一個文本替換工具,它會指示編譯器在實際編譯之前完成所需的預處理。 所有的預處理器命令都是以井號(#)開頭。它必須是第一個非空字元,為了增強可讀性,預處理器指令應從第一列開始。 下表包含所有重要的預處理器指令: 指令 描述 # ...
  •  Django 中的 csrf_token 與單元測試 在 "《Python Web開發:測試驅動方法》" 一書中作者使用的 Django 版本是 1.7,而我使用的是1.9.7版(官網已經更新到1.10了)。這就導致書中給出的代碼可能有“過時”的部分。 比如,下麵是第三章一個單元測試 的代碼,運 ...
  • 題目描述有以下幾個問題:1 給定正整數 求方程 的最小非負整數解。2 給定正整數 求方程 的最小非負整數解。3 給定正整數 求方程 在模 意義下解的數量。4 給定正整數 求 的值。其中 是歐拉函數, 是莫比烏斯函數。輸入格式輸入文件共四行,按上述描述中四個問題的順序,給出每個問題。第一行三個正整數 ... ...
  • 初衷:本人初學SpringMVC的時候遇到各種稀奇古怪的問題,網上各種技術論壇上的帖子又參差不齊,難以一步到位達到配置好的效果,這裡我將我配置的總結寫到這裡供大家初學SpringMVC的同僚們共同學習使用! ...
  • 因為打算全屏顯示一個對話框,而對話框內有幾個QLabel的尺寸要在確定QLabel可用的最大尺寸後,再根據內容調整一次,所以在對話框構造函數內就想確定QLabel的最大尺寸,但因為QWidget::updateGeometry()和QWidget::update()都只能用於可見的控制項,所以如何在控 ...
  • 學習地址:http://www.rm5u.com/ 或 http://www.runoob.com/ iPhone或iTouch的寬為320像素,高為480像素,狀態欄高為20像素,toobar高為44像素,tabbar高為49像素,導航欄高為44像素。 typealias:類型別名對當前的類型定義 ...
  • thinkphp配置文件路徑在入口文件index.php中配置。 如果Public目錄在應用程式目錄同等級位置: 2.如果Public在app內部則: 3.如果使用Public在app外部,但定義為: ...
  • "390. Elimination Game題解" 隨便寫幾個小例子查看,發現每次數字個數減少一半,每一層的數之間的間隔相等,然後考慮模擬刪除過程,需要記錄如下幾個變數 1. 每一層的第一個數 2. 當前層的數字個數 3. 當前層每兩個數字的間隔 然後依次模擬刪除,當個數只剩一個的時候返回,然後考慮 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...