(二)陣列,字串操作函式
陣列:
陣列可以理解為有序的 成對兒 的資料組成的集合
PHP 中根據索引值得不同 分為 :索引陣列 和 關聯陣列
即 PHP 中的陣列NB 了很多 下標不僅可以用數字 還可以 使用字串
陣列的建立
1,使用 array 函式來建立陣列
若建立時 只設置 value 不設定 key 那麼我們會得到一個索引陣列,下標為數字 從零開始
2,若建立時 設定 value 和 key 那麼我們會得到一個關聯陣列,下標為key 並且 key 必須是字串
$arr2 = array("brand1" => "寶馬", "brand2" => "奧迪");
3,多個變數歸為一類的方式建立陣列(往陣列中新增元素);
$arr3[] = "120";
$arr3[] = 123;
4,使用 range 函式獲取陣列 range(起始值(預設為0),上限值,步長(預設為1 可以為小數))
陣列遍歷
foreach 遍歷
//遍歷陣列
foreach ($numArr as $key => $value) {
echo "$key:$value" . "<br>";
};
echo "<hr>";
for 迴圈遍歷
//for 迴圈 遍歷陣列 //count 統計陣列元素的個數 如果存在關聯陣列,count統計時會統計兩種陣列的總個數 $arr4 = array(4, 6, 67, 7); echo(count($arr4)); for ($i = 0; $i < count($arr4); $i++) { echo $arr4[$i] . " "; };
陣列元素新增刪除
$numArr[] = "100"; 新增到最後
array_push(陣列,值1,值2,...) 往陣列的最後新增元素
array_splice() 函式 類似於 js 中 splice 方法本身是替換作用 只寫四個引數
array_unshift() 往開頭新增元素
刪除方法類似於 JS
判斷陣列中是否存在某一個元素
in_array("你", $numArr)
陣列排序
sort(陣列名) 對陣列的value值進行升序排列 rsort() 降序排列
ksort(陣列名) 對陣列的 key 值進行升序排列 krsort() 降序排列
字串
字串處理函式
strlen($str) : 獲取字串長度的方法
strtolower($url) : 全改為小寫
strtoupper($url): 全改為大寫
查詢
strpos(引數一, 引數二, 引數三): 以區分大小寫的形式進行查詢
* 引數一: 被查詢的字串
* 引數二: 要查詢的內容
* 引數三: 開始查詢的位置(可選引數, 經常省略不寫)
* 如果查詢 到 對應的 內容, 則返回 該內容 第一次 出現時的下標;
* 如果查詢 不到, 返回 FALSE
stripos 引數等作用與 strpos 相同, 只不過查詢時 不區分 大小寫
替換
str_replace(引數一, 引數二, 引數三, 引數四);
* 作用: 以區分大小寫的形式執行替換操作.
* 引數一: 被替換的元素
* 引數二: 用來進行替換的元素
* 引數三: 進行替換的字串
* 引數四: 替換髮生的次數(傳的是變數地址, 經常省略該引數)
*
* 注意: 替換操作不會修改 原字串, 會將替換後的字串以返回值的形式返回.
str_ireplace 操作原理與 str_replace 相同, 只不過, 不區分大小寫
字串擷取
substr(引數一, 引數二, 引數三) : 從 引數二 開始擷取 引數三個 引數一 字串. 引數三如果省略, 則擷取到字串結尾
strstr(引數一, 引數二, 引數三) 查詢並擷取 : 從查詢到的 引數二 位置開始 往前或者往後 擷取 引數一字串. 引數三為 bool值: TRUE 往前截, FALSE 往後截, 預設值 FALSE
stristr() 作用原理 與 strstr() 相同, 只不過 不區分 大小寫.
注意: 每個漢字佔用 三個下標位置
刪除左端的空格或預定義字元
string ltrim ( string $str [, string $character_mask ] ) ;
* 該函式返回一個刪除了 str 最左邊的空白字元的字串。 如果不使用第二個引數, ltrim() 僅刪除以下字元:
" " ,普通空白字元。
"\t", 製表符.
"\n" ,換行符。
"\r",回車符。
"\0", NUL空位元組符。
"\x0B",垂直製表符。
*
*
*
* str 輸入的字串。
* 通過引數 character_mask,你也可以指定想要刪除的字元,簡單地列出你想要刪除的所有字元即可。使用..,可以指定字元的範圍。
rtrim 刪除右端的
trim: 去除字串首尾處的空白字元(或者其他字元) 結合了 ltrim 和 rtrim 的功能
strrev($str) 反轉字串
陣列字串相互轉換
/1,字串轉陣列
$time = "2018-9-11";
$timeArr = explode("-", $time);
print_r($timeArr);
echo "<hr>";
//二,陣列轉字串
$time = array("doe","Sod","Sadaw");
$timeArr = implode(";", $time);
echo($timeArr);