php explode函数 中文,php explode()函数的使用方法

本文详细介绍了PHP中的explode()函数,用于分割字符串。通过示例展示了如何使用该函数从电子邮箱地址中提取域名,并根据域名决定邮件发送地址。此外,还提供了一个多行数据分割的实例,演示了如何按行和逗号分割字符串,获取姓名、性别和年龄等信息。
摘要由CSDN通过智能技术生成

在php中分割一个字符串,我们可以使用函数explode()实现,通常我们在开发项目中,想查看用户通过表单或者其它方式提交的字符串的各个部分,以便于分类存储和使用。例如,查看句子中的单词,或者要将一个网址或者电子邮箱地址分割成一个个的组成部分。这时我们就可以使用explode()函数,本篇文章就来介绍一下php explode()函数的使用方法

在PHP开发手册中,其函数原型如下所示:array explode(string separator,string input [, 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脚本:$email_array = explode('@', $email);

代码说明:在这里,通过调用explode()函数,将顾客的电子邮箱地址分割成两部分:用户名称,它保存在数组的第一个元素中,也就是$email_array[0]中,而邮箱域名则保存在第二个数组元素$email_array[1]中。现在,我们已经可以测试域名来判断用户的来源,然后将他们保存到指定的位置:if ($email_array[1]== "qq.com"){

$toaddress= "boss@qq.com";

} else{

$toaddress= "feedback@example.com";

}

请注意,如果域名是大写的或者大小写混合的,这个函数就不能正常的起作用。你可以通过域名转换(转换成全是大写或小写)的方法来避免这个问题,然后再按照如下的方法来检查是否正常匹配:if (strtolower($email_array[1])== "qq.com"){

$toaddress= "boss@qq.com";

} else{

$toaddress= feedback@example.com;

}

下面我们看一个分割字符串实例,代码如下:<?php

header("content-type:text/html;charset=utf-8");

$this_year = 2017;

$text = <<< EOT

小李,F,1994,合肥,PHP程序员

小刘,M,1993,安庆,php工程师

小王,F,1991,六安,项目经理

EOT;

$lines = explode("\n", $text); //将多行数据分开

foreach ($lines as $userinfo) {

$info = explode(",", $userinfo, 3); //仅分割前三个数据

$name = $info[0];

$sex = ($info[1] == "F")? "女" : "男";

$age = $this_year - $info[2];

echo "姓名: $name $sex . 年龄:$age
";

}

?>

代码运行结果:

95b80c1809f63fac6b6819ee15d63e6d.png

【相关文章推荐】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值