码迷,mamicode.com
首页 > 其他好文 > 详细

字符串操作-各种字符串格式输出转换

时间:2015-04-24 16:25:28      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:字符串操作   各种字符串格式输出转换   

提供一些项目中常用的字符串操作功能包括:截取字符串长度、输出转换、随机字符串、全角半角转换、字符集转换、邮箱格式验证、数字转文件大小.

各种字符串格式输出转换代码段:
/**
 * 输出转换
 * @param unknown $string
 * @param string $esc_type
 * @param string $char_set
 * @return string|mixed|unknown
 */
public static function Fescape($string,$esc_type='html',$char_set='ISO-8859-1'){
	switch($esc_type){
		case 'html':
			//特殊字符转换为HTML实体
			return htmlspecialchars($string,ENT_QUOTES,$char_set);
		case 'htmlall':
			return htmlentities($string,ENT_QUOTES,$char_set);
		case 'url':
			return rawurlencode($string);
		case 'urlpathinfo':
			return str_replace('%2F','/',rawurlencode($string));
		case 'quotes':
			// 转义单引号
			return preg_replace("%(?<!\\\\)'%","\\'",$string);
		case 'hex':
			//将二进制数据转换成十六进制表示
			$return='';
			for($x=0;$x<strlen($string);$x++){
				$return.='%'.bin2hex($string[$x]);
			}
			return $return;
		case 'hexentity':
			$return='';
			for($x=0;$x<strlen($string);$x++){
				$return.='&#x'.bin2hex($string[$x]).';';
			}
			return $return;
		case 'decentity':
			$return='';
			for($x=0;$x<strlen($string);$x++){
				$return.='&#'.ord($string[$x]).';';
			}
			return $return;
		case 'javascript':
			// 转义引号和反斜杠、换行等。
			return strtr($string,array('\\'=>'\\\\',"'"=>"\\'",'"'=>'\\"',"\r"=>'\\r',"\n"=>'\\n','</'=>'<\/'));
		case 'mail':
			// 安全的方式来显示网页上的电子邮件地址
			return str_replace(array('@','.'),array('[AT] ','[DOT] '),$string);
		case 'nonstd':
			// 转义非标准字符,如文档引用
			$_res='';
			for($_i=0,$_len=strlen($string);$_i<$_len;$_i++){
				$_ord=ord(substr($string,$_i,1));
				// non-standard char, escape it
				if($_ord>=126){
					$_res.='&#'.$_ord.';';
				}else{
					$_res.=substr($string,$_i,1);
				}
			}
			return $_res;
		default:
			return $string;
	}
}



主要代码功能:
各种字符串格式输出转换.
主要函数运用:
htmlspecialchars : 从数组中取出一段, 并默认会重新排序并重置数组的数字索引.
htmlentities : 详细请查阅:PHP使用正则表达式查找替换字符串http://blog.csdn.net/websites/article/details/18734583
rawurlencode : 返回字符串,此字符串中除了 -_.之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数。按照 RFC 1738 对 URL 进行编码,为了保护原义字符以免其被解释为特殊的 URL 定界符,同时保护 URL 格式以免其被传输媒体(像一些邮件系统)使用字符转换时弄乱。 
bin2hex : 将二进制数据转换成十六进制表示
strtr : 转换指定字符

ord : 返回字符的 ASCII 码值 ,该函数是 chr() 的互补函数。

preg_replace : 详细请查阅:PHP使用正则表达式查找替换字符串

HTML自动补全 (详细请查阅:网页内容的html标签补全和过滤的两种方法)


代码段持续更新中...如果没有你需要的,可以留下你的评论,告诉你的需求.

谢谢关注websites博客.


字符串操作-各种字符串格式输出转换

标签:字符串操作   各种字符串格式输出转换   

原文地址:http://blog.csdn.net/websites/article/details/45246363

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!