php割字元
1. php的分割字元串
str_split()方法 以下是手冊的說明
$str = "Hello Friend";
$arr1 = str_split($str);
Array
(
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
[5] =>
[6] => F
[7] => r
[8] => i
[9] => e
[10] => n
[11] => d
)
2. php字元串切割
正則版本
<?php
$p='我想對level 的值進行切割然後弄成 數組
值為 [1],1,2,3,4,[5],6,7,8,9,[10],11,12 要切割為 如果';
preg_match_all( '/\[(?<a>\d+)\]|(?<b>\d+)/m', $p, $m );
$a=array_values(array_filter($m['a'],'strlen'));
$b=array_values(array_filter($m['b'],'strlen'));
print_r($a);
echo '<hr>';
print_r($b);
===========
輸出
Array
(
[0] => 1
[1] => 5
[2] => 10
)
----------------------------------------------
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 6
[5] => 7
[6] => 8
[7] => 9
[8] => 11
[9] => 12
)
3. php 分割獲取字元串
我們在使用PHP語言進行編程操作時,通常都會對字元串進行增減,改變等。那麼,如何才能實現PHP分割字元串的功能呢?在接下來的文章中我們將會為大家詳細介紹。
PHP分割字元串代碼示例:
< ?php
$str = 』1234′;
$arr = str_split($str);
print_r($arr);
?>
結果 : Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 )
定義和用法
str_split() 函數把字元串分割到數組中。
語法 length 表示每個字元串的個數
str_split(string,length) 默認長度是1 上面如果是str_split($str,2) 結果為Array ( [0] => 12 [1] => 34)
如果是$str=』1 2 3 4′ 這個時候就用 explode()函數 explode(『 『,$str) 按照空格分開
如果是一篇文章的內容時候截取方法是按照字元的個數:用到strlen()函數和substr()字元串截取函數來實現PHP分割字元串的功能,如:
< ?php $len=strlen($row['game_detail']);
//獲取這個字元串的長度;
if($len>102)
//判斷字元串如果大於102就輸出102個字元串。
{ echo $s=substr($row['game_detail'],
0,102); echo '...';
}
else{ echo $row["game_detail"];
//否則就輸出全部;
}
?>
也就是在輸出前做個判斷。。strlen(字元串名稱)。。substr(字元串,0,102)要分割的范圍0-103。以上這些就是PHP分割字元串的全部方法,希望大家有所掌握。
4. php分割字元串
/**
*寬字元串分割
*
*@paramunknown_type$str
*@returnunknown
*/
functionsplit($str){
$ret=array();
$len=strlen($str);
for($i=0;$i<$len;$i++){
//判斷編碼位數
$code=ord($str[$i]);
//單位元組0
if($code>>7==0){
$ret[]=$str[$i];
}
//4位元組1111
elseif($code>>4==15){
if($i<$len-3){
$ret[]=$str[$i].$str[$i+1].$str[$i+2]+$str[$i+3];
$i+=3;
}
}
//3位元組111
elseif($code>>5==7){
if($i<$len-2){
$ret[]=$str[$i].$str[$i+1].$str[$i+2];
$i+=2;
}
}
//雙位元組11
elseif($code>>6==3){
if($i<$len-1){
$ret[]=$str[$i].$str[$i+1];
$i+=1;
}
}
}
return$ret;
}
上面是分隔中文字串為數組的.
這種方式性能比正則表達式要高點. GBK , UTF-8 編碼都是支持的.
分隔完畢之後, 你在循環數組, 設置步長為3 . 然後就可以拼接出你要的了.
5. PHP中如何分割字元串
最常用函數 substr(); 不考慮性能情況下的,萬能分割函數
$str = "hello";
substr($str,1); // ello
substr($str,0,3); // hel
substr($str,3,1); // l
不用我再解釋吧
6. php字元截取
當漢字被截斷時,根據編碼規則他總是要把後邊的其他字元拉過來一起作為漢字解釋,這就是出現亂碼的原因。而值為0x81到0xff與0x00組合始終都顯示為「空」
根據這一特點,在substr的結果後面補上一個chr(0),就可以防止出現亂碼了
先看段代碼
復制代碼
代碼如下:
<?php
$len
=
15;
$str
=
"這個新聞或是文章的標題很長,需要只顯示前面一些字,後面用...來代替";
echo
strlen($str)<=$len
?
$str
:
(substr($str,0,$len).chr(0)."...");
?>
chr(0)相關知識:
null是什麼都沒有,而chr(0)的值是0。表示成16進制是0x00,表示成二進制是00000000
雖然chr(0)不會顯示出什麼,但是他是一個字元。
7. php中字元串分割
你研究一下 正則表達式 吧。
PHP的 split() 函數兼容正則表達式語法。
關於以上用法,給個例子你參考:
<?php
// 分隔符可以是斜線,點,或橫線
$date = "04/30/1973";
list($month, $day, $year) = split ('[/.-]', $date);
echo "Month: $month; Day: $day; Year: $year<br />\n";
?>
提示
preg_split() 函數使用了 Perl 兼容正則表達式語法,通常是比PHP函數split()更快的替代方案。如果不需要正則表達式的威力,則使用 explode() 更快,這樣就不會招致正則表達式引擎的浪費。
8. php分割字元串的函數是什麼
這個函數是substr例子:echo substr('abcdef123', 1, 3); // 輸出bcd
如果你是將字元串分割成單個字元的話,就用split('abcde'),這個返回一個數組.
如果你的字元串有固定的分割符,你可以用explode('|','a|b|cd|e').這個返回也是一個數組.
9. php怎麼分割字元串,php怎麼把字元串編程數組
<?php
$str="1|2|3|4|5|";
$var=explode("|",$str);
print_r($var);
?>
$var=explode("|",$str);
把$str按|進行分割
php還有其他的把字元串指定字元分割成數組
str_split(string,length)參數 描述
string 必需。規定要分割的字元串。
length 可選。規定每個數組元素的長度。默認是 1。
json_decode()這個函數也可以把字元串分割成數組 (第二個參數為true才行)
10. 用php程序切割字元串
這個按照行來讀取就行了
<?
$str = '《雨巷》
作者:戴望舒
撐著油紙傘,獨自
彷徨在悠長,悠長
又寂寥的雨巷,
我希望逢著
一個丁香一樣地
結著愁怨的姑娘。
她是有
丁香一樣的顏色,
丁香一樣的芬芳,
丁香一樣的憂愁,
在雨中哀怨,
哀怨又彷徨;
她彷徨在這寂寥的雨巷,
撐著油紙傘
像我一樣,
像我一樣地
默默行著,
冷漠,凄清,又惆悵。
她靜默地走近
走近,又投出
太息一般的眼光,
她飄過
像夢一般地,
像夢一般地凄婉迷茫。
像夢中飄過
一枝丁香地,
我身旁飄過這女郎;
她靜靜地遠了,遠了,
到了頹圮的籬牆,
走盡這雨巷。
在雨的哀曲里,
消了她的顏色,
散了她的芬芳,
消散了,甚至她的
太息般的眼光,
丁香般的惆悵。
撐著油紙傘,獨自
彷徨在悠長,悠長
又寂寥的雨巷,
我希望飄過
一個丁香一樣地
結著愁怨的姑娘。 ';
$arr = explode('
',$str);
print_r($arr);
echo '<hr>';
echo '一共有'.count($arr) .'行';
?>