php中常用字符串处理代码片段整理


Posted in PHP onNovember 07, 2011

移除 HTML 标签

$text = strip_tags($input, "");

上面的函数主要是使用了strip_tags,具体的使用说明参考。

返回 $start 和 $end 之间的文本

function GetBetween($content,$start,$end){ 
$r = explode($start, $content); 
if (isset($r[1])){ 
$r = explode($end, $r[1]); 
return $r[0]; 
} 
return ''; 
}

将url转换成链接

$url = "Jean-Baptiste Jung (https://3water.com)"; 
$url = preg_replace("#http://([A-z0-9./-]+)#", '<a href="http://www.catswhocode.com/blog/$1" style="font-size: 12px; vertical-align: baseline; background-color: transparent; margin: 0px; padding: 0px; color: #3777af; text-decoration: none; font-weight: bold">$0</a>', $url);

切分字符串为140个字符

function split_to_chunks($to,$text){ 
$total_length = (140 - strlen($to)); 
$text_arr = explode(" ",$text); 
$i=0; 
$message[0]=""; 
foreach ($text_arr as $word){ 
if ( strlen($message[$i] . $word . ' ') <= $total_length ){ 
if ($text_arr[count($text_arr)-1] == $word){ 
$message[$i] .= $word; 
} else { 
$message[$i] .= $word . ' '; 
} 
} else { 
$i++; 
if ($text_arr[count($text_arr)-1] == $word){ 
$message[$i] = $word; 
} else { 
$message[$i] = $word . ' '; 
} 
} 
} 
return $message; 
}

删除字符串中的URL

$string = preg_replace('/\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|$!:,.;]*[A-Z0-9+&@#\/%=~_|$]/i', '', $string);

将字符串转成SEO友好的字符串

function slug($str){ 
$str = strtolower(trim($str)); 
$str = preg_replace('/[^a-z0-9-]/', '-', $str); 
$str = preg_replace('/-+/', "-", $str); 
return $str; 
}

解析 CSV 文件

$fh = fopen("contacts.csv", "r"); 
while($line = fgetcsv($fh, 1000, ",")) { 
echo "Contact: {$line[1]}"; 
}

字符串搜索

function contains($str, $content, $ignorecase=true){ 
if ($ignorecase){ 
$str = strtolower($str); 
$content = strtolower($content); 
} 
return strpos($content,$str) ? true : false; 
}

检查字符串是否以某个串开始

function String_Begins_With($needle, $haystack { 
return (substr($haystack, 0, strlen($needle))==$needle); 
}

从字符串中提取email地址

function extract_emails($str){ 
// This regular expression extracts all emails from a string: 
$regexp = '/([a-z0-9_\.\-])+\@(([a-z0-9\-])+\.)+([a-z0-9]{2,4})+/i'; 
preg_match_all($regexp, $str, $m); return isset($m[0]) ? $m[0] : array(); 
} 
$test_string = 'This is a test string... 
test1@example.org 
Test different formats: 
test2@example.org; 
<a href="test3@example.org">foobar</a> 
<test4@example.org> 
strange formats: 
test5@example.org 
test6[at]example.org 
test7@example.net.org.com 
test8@ example.org 
test9@!foo!.org 
foobar 
'; 
print_r(extract_emails($test_string));
PHP 相关文章推荐
把PHP安装为Apache DSO
Oct 09 PHP
浅析linux下apache服务器的配置和管理
Aug 10 PHP
PHP函数preg_match_all正则表达式的基本使用详细解析
Aug 31 PHP
phpQuery让php处理html代码像jQuery一样方便
Jan 06 PHP
Mac环境下php操作mysql数据库的方法分享
May 11 PHP
PHP概率计算函数汇总
Sep 13 PHP
PHP简单字符串过滤方法示例
Sep 04 PHP
PHP与SQL语句常用大全
Dec 10 PHP
php记录搜索引擎爬行记录的实现代码
Mar 02 PHP
Laravel框架实现利用中间件进行操作日志记录功能
Jun 06 PHP
调试php程序的简单步骤
Oct 04 PHP
PHP常量DIRECTORY_SEPARATOR原理及用法解析
Nov 10 PHP
php smarty截取中文字符乱码问题?gb2312/utf-8
Nov 07 #PHP
PHP面向对象概念
Nov 06 #PHP
php 记录进行累加并显示总时长为秒的结果
Nov 04 #PHP
php 按指定元素值去除数组元素的实现方法
Nov 04 #PHP
php数组函数序列之array_search()- 按元素值返回键名
Nov 04 #PHP
php 伪造本地文件包含漏洞的代码
Nov 03 #PHP
有关php运算符的知识大全
Nov 03 #PHP
You might like
PHP中上传多个文件的表单设计例子
2014/11/19 PHP
Yii2实现跨mysql数据库关联查询排序功能代码
2017/02/10 PHP
js中几种去掉字串左右空格的方法
2006/12/25 Javascript
Js callBack 返回前一页的js方法
2008/11/30 Javascript
Javascript 构造函数,公有,私有特权和静态成员定义方法
2009/11/30 Javascript
jquery miniui 教程 表格控件 合并单元格应用
2012/11/25 Javascript
javascript中call apply 的应用场景
2015/04/16 Javascript
javascript实现禁止鼠标滚轮事件
2015/07/24 Javascript
深入分析node.js的异步API和其局限性
2016/09/05 Javascript
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
2016/12/14 Javascript
js实现选项卡内容切换以及折叠和展开效果【推荐】
2017/01/08 Javascript
angular2中router路由跳转navigate的使用与刷新页面问题详解
2017/05/07 Javascript
详解angular中的作用域及继承
2017/05/31 Javascript
vue中计算属性(computed)、methods和watched之间的区别
2017/07/27 Javascript
Vue导出json数据到Excel电子表格的示例
2017/12/04 Javascript
[50:05]VGJ.S vs OG 2018国际邀请赛淘汰赛BO3 第二场 8.22
2018/08/23 DOTA
[01:14]TI珍贵瞬间系列(六):冠军
2020/08/30 DOTA
Python入门篇之正则表达式
2014/10/20 Python
Python中元组,列表,字典的区别
2017/05/21 Python
使用tensorflow实现AlexNet
2017/11/20 Python
解决python3 网络请求路径包含中文的问题
2018/05/10 Python
解决pandas .to_excel不覆盖已有sheet的问题
2018/12/10 Python
Python3 中作为一等对象的函数解析
2019/12/11 Python
python的slice notation的特殊用法详解
2019/12/27 Python
pytorch GAN生成对抗网络实例
2020/01/10 Python
django 多数据库及分库实现方式
2020/04/01 Python
Hoover胡佛官网:美国吸尘器和洗地机品牌
2019/01/09 全球购物
Pretty Green美国:英式摇滚服饰风格代表品牌之一
2019/01/23 全球购物
汽车驾驶求职信
2013/10/25 职场文书
低碳生活的宣传标语
2014/06/23 职场文书
洗手间标语
2014/06/23 职场文书
森林防火宣传标语
2014/06/27 职场文书
毕业证代领委托书
2014/09/26 职场文书
大学生暑期实践报告之企业经营管理
2019/08/08 职场文书
python基础之停用词过滤详解
2021/04/21 Python
Python学习之时间包使用教程详解
2022/03/21 Python