PHP基礎回顧

2021-07-27 04:30:53 字數 3536 閱讀 8176

定義陣列

$arr=array();

陣列賦值

$arr[i]=v;

$arr=array(『key』=>v);//定義鍵值key對應的值為v

$arr=array(v1,v2)

迴圈訪問陣列

foreach($arr as $key=>$value){}

去除兩側/左/右空格

trim/ltrim/rtrim($str)

獲取字串長度

strlen($str)

mb_strlen($str)(中文字串)

擷取子字串

substr($str,[start,]end)

查詢子字串

strops($str,$sub[,start])

替換子字串

str_replace(old,new,$str[,start])

格式化字串

sprintf(fomat,$str)*

分割字串為陣列

explode(分隔符,$str)

陣列合併為字串

implode(連線符,arr)

注: 字串的格式例如:'%08.3f',其中%代**式開始,f結尾,8代表一共長度是八位數(小數點算一位),如果不夠八位用0填補,.3代表小數點後有三位。

preg_match(表示式,$str)返回是否匹配,preg_match(表示式,$str,$match_arr),匹配結果傳給match_arr陣列,match_arr[0]是整個匹配字元,match_arr[1]是字元()中的第乙個匹配的子字串。preg_match()只返回第乙個匹配到的結果,如果需要匹配全部,用preg_match_all()。

正規表示式以/、#、~開頭結尾,匹配字串中復合格式的字元,如果表示式中含有特殊符號需要使用\進行轉義。

關於匹配的長度,+代表貪婪模式,盡可能多匹配,?代表懶惰模式,匹配最少,如果需要規定長度可用來指定。例如0351-7410852,/\d+\-\d+/,就會都匹配,/\d?\-\d?/就只有匹配1-7。

preg_replace(匹配,格式,$str),匹配替換字串格式。例如將其中檔名以斜體輸出:

<?php

$str = '主要有以下幾個檔案:index.php, style.css, common.js';

$pattern = '/(\w+.\w+), (\w+.\w+), (\w+.\w+)/';

$replace ='$1,$2,$3';

echo preg_replace($pattern,$replace,$str);

其中$1代表第乙個括號匹配的結果,以此類推。

setcookie函式用於設定cookie,setcookie具有7個可選引數常用到的為前5個:

name( cookie名)可以通過$_cookie['name'] 進行訪問

value(cookie的值)

expire(過期時間)unix時間戳格式,預設為0,表示瀏覽器關閉即失效

path(有效路徑)如果路徑設定為'/',則整個**都有效

domain(有效域)預設整個網域名稱都有效

例如:setcookie("testcookie",$value, time()+3600, "/path/", "domin")。

刪除cookie也是採用setcookie函式來實現,將cookie的過期時間設定到當前時間之前即可setcookie('test', '',time()-1);

由於cookie安全與儲存大小等限制,php中使用session儲存使用者資料,使用session:

//開啟session

session_start();

//通過全域性變數$_session設定或讀取session

$_session['name']=value;

//刪除session用函式

unset($_session['name']);

$str=file_get_contents(filename)

將檔案內容讀取到乙個字串中

$fp=fopen (『檔案』,』開啟方式』)

開啟檔案流

fgets($fp)

從檔案指標中讀取一行

freads($fp,長度)

讀取檔案指定長度的字串

file_exists(file)

判斷檔案是否存在

filesize(file)

返回檔案大小

filemtime(file)

檔案修改時間

file_put_contents(file,content)

將content內容輸入到檔案

time()

返回乙個時間戳

date(『format』[,time])

返回日期或將時間戳轉換為日期*

strtotime(時間)

返回指定時間的時間戳

gmtime(『format』 [,time])

返回格林尼治的時間gmt-0

注:時間戳指的是從1970/1/1至今經過的秒數,format指定日期輸出格式,y代表『年』,m『月』,d『日』,h』時』,i』分』,s』秒』例如date(『m-d/y』)輸出:02-18/2017。

$img=imagetruecolor(x,y)

建立並返回大小為x,y的影象資源

$color=imagecolorallocate($img,r,g,b)

為影象分配rgb顏色

imageline($img,起點x,y,終點x,y,$color)

畫一條直線

header("content-type: image/png")

設定影象輸出格式

imagepng($img[,filename][,quality])

以png格式輸出影象資源,或者輸出到檔案

imagedestroy($img)

釋放記憶體

imagestring($img,font-size,x,y,string,$color)

繪製文字

imagesetpixel($img,x,y,$color)

畫乙個點

imagecopy($des,$src,dx,dy,sx,sy,sw,sh)

將源圖src從sx,sy開始寬sw,高sh的部分拷貝到des的dx,dy位置

$img=imagecreatefrompng(filename)

從檔案建立影象

$link=mysql_connect($host,$user,

$pass[,$database])

連線資料庫

mysql_select_db()

選擇資料庫

$res=mysql_query()

執行mysql語句,返回結果

$row=mysql_fetch_row($res)

從結果集中選區一行(數字索引)

$row=mysql_fetch_assoc($res)

選區一行(關鍵字索引)

mysql_close($link)

關閉資料庫連線

PHP基礎知識回顧

header content type text html charset utf 8 conn mysql connect localhost root 鏈結伺服器 非永久性 if conn else db mysql select db test conn 選擇資料庫 if db else my...

PHP基礎回顧之PHP JSON(六)

json 函式 php 陣列轉換為 json 格式資料 arr array a 1,b 2,c 3,d 4,e 5 echo json encode arr php 物件轉換為 json 格式資料 class emp e new emp e name sachin e hobbies sports ...

PHP基礎回顧之E mail(四)

php的mail 函式 php 簡易 e mail通過 php 傳送電子郵件的最簡單的方式是傳送一封文字 email。to someone example.com 郵件接收者 subject 引數郵件 郵件標題 message hello 這是郵件的內容。郵件正文 from someonelse e...