這篇文章主要介紹“PHP怎么截取元素某個片段”,在日常操作中,相信很多人在PHP怎么截取元素某個片段問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”PHP怎么截取元素某個片段”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
創新互聯專注于企業成都營銷網站建設、網站重做改版、梅州網站定制設計、自適應品牌網站建設、H5技術、電子商務商城網站建設、集團公司官網建設、成都外貿網站建設公司、高端網站制作、響應式網頁設計等建站業務,價格優惠性價比高,為梅州等各大城市提供網站開發制作服務。
在之前的學習中,我們了解到截取字符串、獲取子串可以使用substr()和mb_substr()。那么如果是截取數組、返回部分數組元素呢?我們要怎么操作?下面給大家介紹兩種方法。
方法1:使用array_splice()函數
對的,array_splice()函數!我們知道array_splice()函數可以添加、刪除和替換數組元素,怎么又可以截取數組了呢?
那是因為array_splice()函數在刪除數組的一部分元素時,會將這些被刪除的元素組成為一個新數組,然后返回這個新數組;因此array_splice()函數可以用來截取數組片段。
我們來看下面一個小例子:
<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(10,12,20,25,24);
echo "原數組:";
var_dump($arr);
echo "截取的數組片段:";
$result = array_splice($arr,2); //截取從下標2開始的全部數組元素
var_dump($result);
$arr = array(10,12,20,25,24);
$result = array_splice($arr,1,2);//截取從下標1開始的兩個元素
var_dump($result);
?>輸出結果為:

OK!使用array_splice($array,$start,$length)函數我們可以根據數組下標($start的值),截取指定長度($length的值)的數組片段。要記住array_splice()函數會改變原數組!
因為array_splice()函數的刪除功能在之前的文章中詳細敘述過了,這里就不具體介紹了,不懂的可以去看《PHP數組學習之怎么去除任意元素》。接下來我們了解第二種截取數組的方法!
方法二:使用array_slice()函數
array_slice()函數就是PHP提供的用來截取數組的一個函數,可以從數組中提取出一個片段。下面我們來了解一下array_slice()函數:
array_slice($array,$start,$length,$preserve)
該函數支持2個必需的參數:$array和$start,兩個可省略的參數$length和$preserve。
參數$array就不必介紹了吧,參數$start用于指定開始截取的位置(下標),參數$length表示截取長度(如果省略,則會從指定下標開始一直截取到數組末尾)。
<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(10,12,20,25,24);
echo "原數組:";
var_dump($arr);
echo "截取的數組片段:";
$result = array_slice($arr,2); //截取從下標2開始的全部數組元素
var_dump($result);
$result = array_slice($arr,1,2); //截取從下標1開始的兩個元素
var_dump($result);
?>輸出結果為:

可以看出,在截取數組操作上,array_slice()函數和array_splice()函數的功能是類似的;但array_slice()函數不會改變原數組!
參數$start有3種取值情況:
為0,
為正數,則從前往后截取。
為負數,則從距離 $array 末端 -start 的位置開始(即按絕對值從數組右側開始向左側定位),從后往前截取。例如 -2 意味著從數組的倒數第二個元素開始。
<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(10,12,20,25,24);
echo "原數組:";
var_dump($arr);
echo "截取的數組片段:";
$result = array_slice($arr,2);
var_dump($result);
$result = array_slice($arr,-2);
var_dump($result);
?>輸出結果為:

參數$length也有3種取值情況:
如果 length 為正數,那么表示截取的元素個數;
如果 length 為負數,那么截取的片段將終止在距離數組末端 length 的位置;
如果省略,那么將從 start 位置開始,一直截取到數組的末尾。
<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(10,12,20,25,24);
echo "原數組:";
var_dump($arr);
echo "截取的數組片段:";
$result = array_slice($arr,1,1);
var_dump($result);
$result = array_slice($arr,1,-1);
var_dump($result);
?>輸出結果為:

參數$preserve表示是否保留原來的鍵名,默認值為false,也即不保留;如果設置為 true,將保留原有的鍵名。
<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(10,12,20,25,24);
echo "原數組:";
var_dump($arr);
echo "截取的數組片段:";
$result = array_slice($arr,1,1,true);
var_dump($result);
$result = array_slice($arr,1,-1,true);
var_dump($result);
?>輸出結果為:

到此,關于“PHP怎么截取元素某個片段”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注創新互聯網站,小編會繼續努力為大家帶來更多實用的文章!
新聞標題:PHP怎么截取元素某個片段
轉載來源:http://www.yijiale78.com/article8/pceoop.html
成都網站建設公司_創新互聯,為您提供域名注冊、App設計、自適應網站、網站策劃、動態網站、標簽優化
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯