PHP字符处理函数的问题总结

我们在学习PHP语言的时候知道,它是一个功能非常强大的计算机高级语言,那么它的功能体现在哪些地方呢?下面我们就像大家总结了一些PHP字符处理函数的相关问题,供大家学习参考。

从网站建设到定制行业解决方案,为提供网站制作、做网站服务体系,各种行业企业客户提供网站建设解决方案,助力业务快速发展。成都创新互联公司将不断加快创新步伐,提供优质的建站服务。

#t#PHP字符处理函数1. in_array()函数

Java代码

  1. $zero = "0"; 
  2. $za = array("00"); 
  3. if(in_array($zero, $za, true)){ 
  4. echo 'in'; 
  5. }else{ 
  6. echo 'not in'; 
  7. }
  8. $zero = "0";
  9. $za = array("00");
  10. if(in_array($zero, $za, true)){
  11. echo 'in';
  12. }else{
  13. echo 'not in';
  14. }

这段代码应该输出什么?答案是in,而不是not in。
然后测试一下这个:

Java代码

 
 
 
  1. $zero = "0"; 
  2. $za = array("00"); 
  3. if("0" == "00"){ 
  4. echo '0 == 00'; 
  5. $zero = "0";
  6. $za = array("00");
  7. if("0" == "00"){
  8. echo '0 == 00';
  9. }

返回'0'=='00'。

所以以后要注意:对于字符串不是说in,就表示那个字符在array里面。

PHP字符处理函数2. strtolower()函数

我的解决方式是:

Java代码

 
 
 
  1. urldecode(strtolower
    (urlendoce($str))); 
  2. urldecode(strtolower
    (urlendoce($str)));

PHP字符处理函数3. trim()

如果面对的是英文字符,那么trim()应该就满足了,但是对于中文字符,就应该重写以trim掉全角的空格:

Java代码

 
 
 
  1. function cntrim($value){ 
  2. return trim(ereg_replace("^(
     )*|( )*$","", $value)); 
  3. function cntrim($value){
  4. return trim(ereg_replace("^( 
    )*|( )*$","", $value));
  5. }

PHP字符处理函数4. empty():

这个就有点像上面那个in_array()了,如果你要判断一个textarea里面是否有值,不能光使用empty,因为'0'字符串也会返回empty(但奇怪的是'00'就不会返回empty),重写以应对这种情况:

Java代码

 
 
 
  1. function non_szero_empty
    ($value){ 
  2. return empty($value) && 
    $value != '0'; 
  3. function non_szero_empty
    ($value){
  4. return empty($value) &&
     $value != '0';
  5. }

PHP字符处理函数5. htmlentities():

与strtolower()类似,htmlentities也会出现一些转义gbk字符的问题,以致出现乱码。索性这样替换:

Java代码

 
 
 
  1. function _myhtmlentities($value){ 
  2. //$value = preg_replace('/&
    ((#(\d{3,5}|x[a-fA-F0-9]{4})|
    [a-zA-Z][a-z0-9]{2,5});)/', '&\\1'
    , str_replace(array('&', '"', '< ', '>')
    , array('&', '"', '<', 
    '>'), $value)); 
  3. $value = str_replace(array('&', '"', 
    '< ', '>'), array('&', '"', 
    '<', '>'), $value); 
  4. return $value; 
  5. function _myhtmlentities($value){
  6. //$value = preg_replace('/&((#(
    \d{3,5}|x[a-fA-F0-9]{4})|[a-zA-Z][a-
    z0-9]{2,5});)/', '&\\1', str_replace
    (array('&', '"', '< ', '>'), array(
    '&', '"', '<', '>'), $value));
  7. $value = str_replace(array('&', '"', 
    '< ', '>'), array('&', '"', 
    '<', '>'), $value);
  8. return $value;
  9. }

不过现在还在疑惑为什么htmlentities会出现乱码,这样改为什么又可行。计划有时间看源代码一探究竟。

以上就是我们这次要向大家介绍的PHP字符处理函数的全部内容。

分享名称:PHP字符处理函数的问题总结
文章起源:http://www.shufengxianlan.com/qtweb/news24/513274.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联