字符函數庫: 函數庫基礎 安裝字符串函數庫 字符串函數庫列表javascript
函數是能夠實現特定功能,能夠重複執行的代碼段。php
函數分 內置函數 和 用戶函數。html
內置函數是指PHP自己提供的各種庫函數。java
字符串函數庫,是PHP核心的組成部分node
獲取字符串長度:strlen函數mysql
int strlen(string $str)
複製代碼
utf-8
中文一個表明3個。strlen
用於英文等,無中文。sql
大小寫轉換:數據庫
$str('hh');
strtoupper($str1);
複製代碼
ucfirst
函數,將句子首字母轉換爲大寫,ucwords
函數將每一個單詞的首字母轉換爲大寫。數組
string ucfirst(string $str) 和 string ucwords(string $str)
複製代碼
字符串的替換函數緩存
str_replace
函數區分大小寫,str_ireplace
函數不區分大小寫。
str_replace('a','b',$str); // a 換 b ,是注意大小寫的。
複製代碼
htmlspecialchars
函數,預約義的字符串轉換爲html實體。
string htmlspecialchars(string $str [,int $flags = ENT_COMPAT)
複製代碼
Itrim
函數,用於實現刪除字符串開始位置的空格或其餘字符,用於刪除開始的空格,後面無論。
rtrim
函數用於實現刪除字符串結束位置的空格,或者是其餘字符。
string rtrim(string $str[,string $charlist])
複製代碼
trim
函數用於實現刪除字符串開始和結束的位置刪除空格。
獲取字符串位置相關函數
strpos
函數,返回一個字符在另外一個字符第一次出現的位置
stripos
函數,同理,可是忽略大小寫的
strrpos
函數,返回的是一個字符串在另外一個字符串最後一次出現的位置,strripos
函數忽略大小寫
字符串截取函數
substr
函數,用於實現截取字符串
string substr(string $string, int $start [, int $length])
複製代碼
$str = 'javascript';
echo substr($str, 0, 4);
複製代碼
<?php
header('content-type:text/html;charset=utf-8');
$filename = 'ab.sd.jpEg';
$num = strrpos($filename, '.');
echo strtolower(substr($filename,$num+1));
?>
// jpEg
複製代碼
strstr
函數,將返回一個字符串在另外一個字符串中第一次出現的位置,區分大小寫。同理,stristr
函數忽略大小寫。
strrchr
函數,將返回一個字符串在另外一個字符串最後一次出現的位置。
strrev
函數,用於反轉字符串。
md5();函數加密。
分割字符串
explode
函數,使用一個字符串分割另外一個字符串。
$str = "a|b|c";
$arr = explode("|", $str);
複製代碼
implode
函數,用於將一個一維數組的值轉化爲字符串。
$arr = array('a','b','c');
$str = implode(',', $arr);
複製代碼
格式化字符串:
sprintf
函數,格式化字符串。
數學函數
求平方根sqrt
float sqrt(float $arg)
複製代碼
最大最小值:max
函數,min
函數
隨機數:rand
函數,mt_rand
函數。
四捨五入函數,round
函數用於實現四捨五入
數字格式化:number_format
函數
格式化日期:
time
函數,返回當前Unix時間戳 字符串轉時間戳strtotime
函數。
生成惟一id
,uniqid
函數。
獲取日期:
getdate
函數,獲取日期
定義數組:
array()
[]
range()
compact()
define()
複製代碼
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<form class="" action="#" method="post" enctype="multipart/form-data">
<input type="file" name="files[]" value=""> <br>
<input type="file" name="files[]" value=""> <br>
<input type="file" name="files[]" value=""> <br>
<input type="submit" name="name" value="">
</form>
<?php
print_r($_FILES);
?>
</body>
</html>
複製代碼
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>註冊頁面</title>
</head>
<body>
<form action="doReg.php" method="post">
<input type="text" name="username" id="" placeholder="請輸入合法用戶名"> <br>
<input type="password" name="password" id="" placeholder="請輸入密碼"> <br>
<input type="email" name="email" id="" placeholder="請輸入合法郵箱"> <br>
<input type="submit" value="註冊">
</form>
</body>
</html>
複製代碼
數組的遍歷:
經過foreach
遍歷,經過數組的指針函數遍歷數組,經過each
和list()
遍歷數組。
foreach
語法結構提供了遍歷數組的簡單方式。foreach
應用於數組和對象。
key($arr)
獲得當前指針所咋位置的鍵名 current($arr)
獲得當前指針所在位置的鍵值
next()
將數組中的內部指針向前移動一位,向下移動 prev()
向上移動
each
返回數組中當前的鍵/值對並將數組指針向前移動一步
什麼是cookie?cookie有什麼用?與cookie相關函數。
array_multisort
對多個數組或多維數組進行排序 array_pad
用值將數組填補到指定長度 array_pop
將數組最後一個單元彈出 array_product
計算數組中全部值的乘積 array_push
將一個多多個單元壓入數組的末尾 array_rand
從數組中隨機取出一個或多個單元 array_reduce
用回調函數迭代地將數組簡化爲單一的值 array_reverse
返回一個單元順序相反的數組 array_search
在數組中搜索給定的值
<?php
$username=$_POST['username'];
$password=$_POST['password'];
$email=$_POST['email'];
$userInfo=compact('username','password','email');
print_r($userInfo);
/*
Array
(
[username] =>
[password] =>
[email] => @qq.com
)
array_keys():
array_values():
*/
//INSERT user(username,password,email) VALUES('aaa','bbb','ccc');
$keys=join(',',array_keys($userInfo));
$vals="'".join("','",array_values($userInfo))."'";
// print_r($keys);
// print_r($vals);
$sql="INSERT user({$keys}) VALUES({$vals})";
echo $sql;
複製代碼
什麼是session?爲啥使用session?session的工做原理,與session相關的函數,php配置中的session片斷。
session
會話控制
php
操做mysql
mysql
非永久鏈接,性能比較低 mysqli
永久鏈接,減輕服務器壓力 pdo
能實現mysqli
的經常使用功能
mysql
鏈接數據庫
鏈接數據庫
mysql_connect($server, $username, $password)
複製代碼
選擇數據庫
mysql_select_db($database_name)
複製代碼
設置字符串
mysql_set_charset($charset)
複製代碼
mysql
方法執行sql
語句
mysql_query($query)
對insert
,update
,drop
之類的操做,執行成功爲true
,不然爲false
。
數據庫:
create table addbasicsituation (
BId int(100) not null auto_increment,
primary key(BId)
) engine=InnoDB default charset = utf8
複製代碼
$sql = "CREATE TABLE `addappearanceparameter` ( `FId` int(100) NOT NULL AUTO_INCREMENT, PRIMARY KEY(`FId`) )ENGINE=InnoDB DEFAULT CHARSET=utf8";
mysql_query($sql);
$sql1 = "ALTER TABLE `addappearanceparameter` ADD `{$row['FName']}` VARCHAR( 100 ) NOT NULL DEFAULT '無'";
mysql_query($sql1);
複製代碼
CREATE TABLE `addcellparameters` (
`XId` int(100) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`XId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
複製代碼
PHP mysql_fetch_array()
函數
mysql_assoc
mysql_num
mysql_both
複製代碼
$sql = "select * from person where name='add'";
$result = mysql_query($sql,$con);
print_r(mysql_fetch_array($result));
複製代碼
PHP mysql_fetch_row()
函數,函數從結果集中取得一行做爲數字數組。
PHP mysql_fetch_assoc()
函數
session
的工做原理
第一次訪問,進行http
請求,進行初始化session
,建立sessionID
,將session
數據存儲到預約義變量$_SESSION
中,頁面執行完畢,將session
信息存儲到文件,另外一條,將http
響應,帶有sessionID
顯示頁面sessionID
存儲到cookie
。
進行第二次訪問,http
請求,帶有sessionID
,進行session
初始化,根據sessionID
讀取文件(session
文件),進行執行php
代碼,頁面執行完畢將session
信息存儲到session
文件,另外一個http
響應,帶有sessionID
顯示頁面,進行退出。
註解session
和刪除session
文件。
setcookie
函數,設置cookie
文件操做
文件目錄函數庫:文件信息相關,文件操做相關,內容操做相關。
目錄,資源類型 預約義變量
directory - directory類
directory::close 釋放目錄句柄
directory::read 從目錄句柄中讀取條目
directory::rewind 倒回目錄句柄
複製代碼
chdir — 改變目錄
chroot — 改變根目錄
closedir — 關閉目錄句柄
dir — 返回一個 Directory 類實例
getcwd — 取得當前工做目錄
opendir — 打開目錄句柄
readdir — 從目錄句柄中讀取條目
rewinddir — 倒回目錄句柄
scandir — 列出指定路徑中的文件和目錄
複製代碼
文件信息
Fileinfo 函數finfo_buffer — 返回一個字符串緩衝區的信息
finfo_close — 關閉 fileinfo 資源
finfo_file — 返回一個文件的信息
finfo_open — 建立一個 fileinfo 資源
finfo_set_flags — 設置 libmagic 配置選項
mime_content_type — 檢測文件的 MIME 類型
finfo — finfo 類finfo::buffer — 別名 finfo_buffer()
finfo::__construct — 別名 finfo_open
finfo::file — 別名 finfo_file()
finfo::set_flags — 別名 finfo_set_flags()
複製代碼
文件系統
basename — 返回路徑中的文件名部分
chgrp — 改變文件所屬的組
chmod — 改變文件模式
chown — 改變文件的全部者
clearstatcache — 清除文件狀態緩存
copy — 拷貝文件
delete — 參見 unlink 或 unset
dirname — 返回路徑中的目錄部分
disk_free_space — 返回目錄中的可用空間
disk_total_space — 返回一個目錄的磁盤總大小
diskfreespace — disk_free_space 的別名
fclose — 關閉一個已打開的文件指針
feof — 測試文件指針是否到了文件結束的位置
fflush — 將緩衝內容輸出到文件
fgetc — 從文件指針中讀取字符
fgetcsv — 從文件指針中讀入一行並解析 CSV 字段
fgets — 從文件指針中讀取一行
fgetss — 從文件指針中讀取一行並過濾掉 HTML 標記
file_exists — 檢查文件或目錄是否存在
file_get_contents — 將整個文件讀入一個字符串
file_put_contents — 將一個字符串寫入文件
file — 把整個文件讀入一個數組中
fileatime — 取得文件的上次訪問時間
filectime — 取得文件的 inode 修改時間
filegroup — 取得文件的組
fileinode — 取得文件的 inode
filemtime — 取得文件修改時間
fileowner — 取得文件的全部者
fileperms — 取得文件的權限
filesize — 取得文件大小
filetype — 取得文件類型
flock — 輕便的諮詢文件鎖定
fnmatch — 用模式匹配文件名
fopen — 打開文件或者 URL
fpassthru — 輸出文件指針處的全部剩餘數據
fputcsv — 將行格式化爲 CSV 並寫入文件指針
fputs — fwrite 的別名
fread — 讀取文件(可安全用於二進制文件)
fscanf — 從文件中格式化輸入
fseek — 在文件指針中定位
fstat — 經過已打開的文件指針取得文件信息
ftell — 返回文件指針讀/寫的位置
ftruncate — 將文件截斷到給定的長度
fwrite — 寫入文件(可安全用於二進制文件)
glob — 尋找與模式匹配的文件路徑
is_dir — 判斷給定文件名是不是一個目錄
is_executable — 判斷給定文件名是否可執行
is_file — 判斷給定文件名是否爲一個正常的文件
is_link — 判斷給定文件名是否爲一個符號鏈接
is_readable — 判斷給定文件名是否可讀
is_uploaded_file — 判斷文件是不是經過 HTTP POST 上傳的
is_writable — 判斷給定的文件名是否可寫
is_writeable — is_writable 的別名
lchgrp — 修改符號連接的全部組
lchown — 修改符號連接的全部者
link — 創建一個硬鏈接
linkinfo — 獲取一個鏈接的信息
lstat — 給出一個文件或符號鏈接的信息
mkdir — 新建目錄
move_uploaded_file — 將上傳的文件移動到新位置
parse_ini_file — 解析一個配置文件
parse_ini_string — 解析配置字符串
pathinfo — 返回文件路徑的信息
pclose — 關閉進程文件指針
popen — 打開進程文件指針
readfile — 輸出文件
readlink — 返回符號鏈接指向的目標
realpath_cache_get — 獲取真實目錄緩存的詳情
realpath_cache_size — 獲取真實路徑緩衝區的大小
realpath — 返回規範化的絕對路徑名
rename — 重命名一個文件或目錄
rewind — 倒回文件指針的位置
rmdir — 刪除目錄
set_file_buffer — stream_set_write_buffer 的別名
stat — 給出文件的信息
symlink — 創建符號鏈接
tempnam — 創建一個具備惟一文件名的文件
tmpfile — 創建一個臨時文件
touch — 設定文件的訪問和修改時間
umask — 改變當前的 umask
unlink — 刪除文件
複製代碼
文件上傳
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<h1>文件上傳</h1>
<form action="doUpload.php" method='post' enctype="multipart/form-data">
<input type="file" name="myFile" id="">
<input type="submit" value="當即上傳">
</form>
</body>"經常使用操做"
</html>
複製代碼
<?php
require_once 'file.func.php';
$fileInfo=$_FILES['myFile'];
var_dump(upload_file($fileInfo));
複製代碼
<?php
require_once 'file.func.php';
$filename=$_GET['filename'];
down_file1($filename);
複製代碼
好了,歡迎在留言區留言,與你們分享你的經驗和心得。
感謝你學習今天的內容,若是你以爲這篇文章對你有幫助的話,也歡迎把它分享給更多的朋友,感謝。
做者簡介
達叔,理工男,簡書做者&全棧工程師,感性理性兼備的寫做者,我的獨立開發者,我相信你也能夠!閱讀他的文章,會上癮!,幫你成爲更好的本身。長按下方二維碼可關注,歡迎分享,置頂尤佳。