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

yipeiwu_com7年前PHP代码库

移除 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 (//www.jb51.net)";
$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启用sphinx全文搜索的实现方法

本文实例讲述了php启用sphinx全文搜索的实现方法。分享给大家供大家参考。具体分析如下: 在编译安装 sphinx 的时候出现很多中文乱码,最后抛出错误卡住了,我去到官方直接下载一个...

生成ubuntu自动切换壁纸xml文件的php代码

复制代码 代码如下: <?php /* * 生成ubuntu自动切换壁纸xml文件 */ //图片目录 $dir = '/home/yuxing/background'; $hd...

php轻松实现文件上传功能

本文分为五个部分针对php上传文件进行分析讲解,具体内容如下 文件上传变量 将服务器上的临时文件移动到指定目录下 php.ini上传相关配置 error错误号 单文...

Yii2使用驼峰命名的形式访问控制器(实例讲解)

Yii2使用驼峰命名的形式访问控制器(实例讲解)

yii2在使用的时候,访问控制器的时候,如果控制器的名称是驼峰命名法,那访问的url中要改成横线的形式。例如: public function actionRoomUpdate()...

PHP随机字符串生成代码(包括大小写字母)

第一种:利用字符串函数操作 复制代码 代码如下: <?php function createRandomStr($length){ $str = '0123456789abcdef...