Ⅰ php中如何分割字元串
最常用函數 substr(); 不考慮性能情況下的,萬能分割函數
$str = "hello";
substr($str,1); // ello
substr($str,0,3); // hel
substr($str,3,1); // l
不用我再解釋吧
Ⅱ 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 . 然後就可以拼接出你要的了.
Ⅲ PHP數組分割
$a = "12@84@940@33@77";
$elements = explode("@", $a);
print_r($elements);
關於explode
格式:
array explode ( string separator, string string [, int limit] )
此函數返回由字元串組成的數組,每個元素都是 string 的一個子串,它們被字元串 separator 作為邊界點分割出來。如果設置了 limit 參數,則返回的數組包含最多 limit 個元素,而最後那個元素將包含 string 的剩餘部分。
如果 separator 為空字元串(""),explode() 將返回 FALSE。如果 separator 所包含的值在 string 中找不到,那麼 explode() 將返回包含 string 單個元素的數組。
如果 limit 參數是負數,則返回除了最後的 limit 個元素外的所有元素。此特性是 PHP 5.1.0 中新增的。
由於歷史原因,雖然 implode() 可以接收兩種參數順序,但是 explode() 不行。你必須保證 separator 參數在 string 參數之前才行。
Ⅳ php中如何分割文本
PHP用空格分割文本為數組的方法:
php逐行讀取文本文件,然後處理空格分隔文本,輸出為數組的方法。
文本文檔text.txt內容:
1 欄位1 欄位2 2 欄位1 欄位2 3 欄位1 欄位2 4 欄位1 欄位2
文本和文本之間用空格隔開,用php經過處理,輸出為數組,以下是代碼:
< php $file = fopen("text.txt", "r") or exit("Unable to open file!");
while(!feof($file)) { $arr = split(' ' , fgets($file)); print_r($arr); } fclose($file); >
輸出結果:
Array ( [0] => 1 [1] => 欄位1 [2] => 欄位2 ) Array ( [0] => 2 [1] => 欄位1 [2] => 欄位2 ) Array ( [0] => 3 [1] => 欄位1 [2] => 欄位2 ) Array ( [0] => 4 [1] => 欄位1 [2] => 欄位2 )
這樣就實現了PHP用空格分割文本為數組的方法.
Ⅳ 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分割字元串的全部方法,希望大家有所掌握。
Ⅵ 請問如何用PHP分割內容
$arr1=explode("\n",$imgtxt);
for($arr1 as $v){
$arr2=explode("::::::",$v);
echo "<img src=\"".$arr2[1]."\" alt=\"".$arr2[0]."\" width=\"".$arr2[2]."\" height=\"".$arr2[3]."\">";
}
Ⅶ php 分割數組數據
str_split函數能實現你這樣的功能,把字元串按長度分割為數組,例如:
<?php
$str="HelloFriend";
$arr1=str_split($str);
$arr2=str_split($str,3);
print_r($arr1);
print_r($arr2);
?>
代碼輸出的結果如下:
Array
(
[0]=>H
[1]=>e
[2]=>l
[3]=>l
[4]=>o
[5]=>
[6]=>F
[7]=>r
[8]=>i
[9]=>e
[10]=>n
[11]=>d
)
Array
(
[0]=>Hel
[1]=>lo
[2]=>Fri
[3]=>end
)
Ⅷ 怎麼用php分割出這樣的內容
$arr = explode('###',$str);
$str2 = '';
foreach($arr as $v){
$text = explode('$',$v)[0];
$url = explode('$',$v)[1];
$str2 += "<li><a href='{$url}'>{$text}</a></li>";
}
echo $str2;
基本思路就是
先把每條的數據拿出來,用###分割的
每條數據中用$分割的 ,第一部分是展現是的文字,第二部分是url
組合字元串展示出來
Ⅸ PHP分割字元串
假設你的這個字元串名為$str
$str = 'john123mike33lily51';
$name = preg_split("/[\d]+/", $str);
$number = preg_split("/[a-z|A-Z]+/", $str);
那麼$name就是名字數組,$number是數字數組。其中應用到了正則表達式
Ⅹ php 分割字元串
這100分來得好爽哦,樓上的正解。
關於str_split的詳細例子程序:
<?php
$str="HelloFriend";
$arr1=str_split($str);
$arr2=str_split($str,3);
print_r($arr1);
print_r($arr2);
?>
上例將輸出:
Array
(
[0]=>H
[1]=>e
[2]=>l
[3]=>l
[4]=>o
[5]=>
[6]=>F
[7]=>r
[8]=>i
[9]=>e
[10]=>n
[11]=>d
)
Array
(
[0]=>Hel
[1]=>lo
[2]=>Fri
[3]=>end
)
但是,str_split不支持漢字,會把漢字分為兩半,需要把漢字當為一個字元進行處理的時候,需要自己編寫函數。