您现在的位置: 365建站网 > 365文章 > PHP explode()函数截取切割字符串与str_split/split/implode用法区别

PHP explode()函数截取切割字符串与str_split/split/implode用法区别

文章来源:365jz.com     点击数:923    更新时间:2017-08-18 08:23   参与评论
 
<? 
// ### 切分字符串 #### 
function jb51netcut($start,$end,$file){ 
$content=explode($start,$file); 
$content=explode($end,$content[1]); 
return $content[0]; 
} 
?> 


explode定义和用法
explode() 函数把字符串分割为数组。

语法
explode(separator,string,limit)

参数 描述
separator 必需。规定在哪里分割字符串。
string 必需。要分割的字符串。
limit 可选。规定所返回的数组元素的最大数目。

说明
本函数返回由字符串组成的数组,其中的每个元素都是由 separator 作为边界点分割出来的子字符串。

separator 参数不能是空字符串。如果 separator 为空字符串(""),explode() 将返回 FALSE。如果 separator 所包含的值在 string 中找不到,那么 explode() 将返回包含 string 中单个元素的数组。

如果设置了 limit 参数,则返回的数组包含最多 limit 个元素,而最后那个元素将包含 string 的剩余部分。

如果 limit 参数是负数,则返回除了最后的 -limit 个元素外的所有元素。此特性是 PHP 5.1.0 中新增的。
提示和注释
注释:参数 limit 是在 PHP 4.0.1 中加入的。

注释:由于历史原因,虽然 implode() 可以接收两种参数顺序,但是 explode() 不行。你必须保证 separator 参数在 string 参数之前才行。

例子

在本例中,我们将把字符串分割为数组:
 
<?php 
$str = "Hello world. It's a beautiful day."; 
print_r (explode(" ",$str)); 
?> 

输出:

Array
(
[0] => Hello
[1] => world.
[2] => It's
[3] => a
[4] => beautiful
[5] => day.
)


str_split() 将字符串分割为一个数组,成功返回一个数组。

语法:

array str_split( string string [, int length] )
参数说明:
参数 说明
string 需要分割的字符串
length 可选,表示每个分割单位的长度,不可小于1


例子:

<?php
$str = 'one two three';
$arr1 = str_split($str);
$arr2 = str_split($str, 3);
print_r($arr1);
print_r($arr2);
?>

输出结果如下:

Array
(
    [0] => o
    [1] => n
    [2] => e
    [3] => 
    [4] => t
    [5] => w
    [6] => o
    [7] => 
    [8] => t
    [9] => h
    [10] => r
    [11] => e
    [12] => e
)
Array
(
    [0] => one
    [1] =>  tw
    [2] => o t
    [3] => hre
    [4] => e
)



php中explode与split的区别介绍

首先来看下两个方法的定义:

函数原型:array split (string $pattern, string $string [, int $limit])

函数原型:array explode ( string $separator, string $string [, int $limit])

初看没有啥差别,貌似功能都一样。我就犯了这个错误。 请注意两个函数的第一个参数string $pattern和string separator,一个是$pattern说明是正则字符串,一个是$separator是普通字符串。

看下面的代码:
 
$test = end(explode('.', 'abc.txt')); 
echo $test;//output txt 

换成:
 
$test1 = end(split('.','abc.txt')); 
echo $test1;//no output 

用split的正确做法是:加转义符号
 
$test1 = end(split('\.','abc.txt')); 
echo $test1;//output txt 


分析:"." 符号是正则表达式的关键字所以split无效,而explode有效。


PHP implode() 函数

例子<?php$arr = array('Hello','World!','Beautiful','Day!');echo implode(" ",$arr);?>
输出:
Hello World! Beautiful Day!

订义和用法implode() 函数把数组元素组合为一个字符串。
语法implode(separator,array)
参数描写separator可选。划定数组元素之间搁放的内容。默许是 ""(空字符串)。array必须,400电话。要联合为字符串的数组。阐明固然 separator 参数是可选的。但是为了背后兼容,推举您使用使用两个参数。
提醒和正文正文:implode() 能够接受两类参数次序。但是因为历史缘由,explode() 是没有止的。您必需保证 separator 参数正在 string 参数之前才止。

PHP的explode和implode
 
<?php 
$zongzi = "1|2|3|4|5|6"; 
$zongzi = explode("|",$zongzi); 
var_dump($zongzi); 
$zongzi = implode("|",$zongzi); 
echo $zongzi; 
?> 

如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛

发表评论 (923人查看0条评论)
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
昵称:
最新评论
------分隔线----------------------------

快速入口

· 365软件
· 杰创官网
· 建站工具
· 网站大全

其它栏目

· 建站教程
· 365学习

业务咨询

· 技术支持
· 服务时间:9:00-18:00
365建站网二维码

Powered by 365建站网 RSS地图 HTML地图

copyright © 2013-2024 版权所有 鄂ICP备17013400号