php ltrim() rtrim() trim()删除字符空格

 更新时间:2016年11月25日 16:48  点击:2054
php中的trim函数不能像asp中的一样,可以自动删除所有空格,它专业提供了 rtrim() trim()函数,有需要的可以参考。
 代码如下 复制代码

<?php
$str=" 去除前后空格 ";
echo "方括号中为原始字符串:[".$str."]<br>";
echo "原始字符串长度:".strlen($str)."<br>";
$str1=ltrim($str);
echo "执行ltrim()之后的长度:".strlen($str1)."<br>";
$str2=rtrim($str);
echo "执行rtrim()之后的长度:".strlen($str2)."<br>";
$str3=trim($str);
echo "执行trim()之后的长度:".strlen($str3)."<br>";
echo "去掉首尾空格之后的字符串:[".$str3."]";

?>

本文章介绍的是php自带的一个截取字符串的函数,只能处理英文,数字的不能截取中文混排的哦,有需要的朋友可以参考,后面的比较好用,第一个主要是给初学者学学用的。
 代码如下 复制代码
<?php
  //构造字符串
  $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  echo "原字符串:<b>".$str."</b><br>";
  //按各种方式进行截取
  $str1 = substr($str,5);
  echo "从第5个字符开始取至最后:".$str1."<br>";
  $str2 = substr($str,9,4);
  echo "从第9个字符开始取4个字符:".$str2."<br>";
  $str3 = substr($str,-5);
  echo "取倒数5个字符:".$str3."<br>";
  $str4 = substr($str,-8,4);
  echo "从倒数第8个字符开始向后取4个字符:".$str4."<br>";
  $str5 = substr($str,-8,-2);
  echo "从倒数第8个字符开始取到倒数第2个字符为止:".$str5."<br>";
 ?>

支持中英文混合截取。

 代码如下 复制代码

<?
/*
------------------------------------------------------
参数:
$str_cut    需要截断的字符串
$length     允许字符串显示的最大长度

程序功能:截取全角和半角(汉字和英文)混合的字符串以避免乱码
------------------------------------------------------
*/
function substr_cut($str_cut,$length)
{
    if (strlen($str_cut) > $length)
    {
        for($i=0; $i < $length; $i++)
        if (ord($str_cut[$i]) > 128)    $i++;
        $str_cut = substr($str_cut,0,$i)."..";
    }
    return $str_cut;
}
?>

这里要介绍关于php日期函数的区别了,这里主要讲到了date和gmdate的用法区别,有需要的朋友可以参考一下。

date — 格式化一个本地时间/日期

date/time 函数允许您提取并格式化服务器上的日期和时间。

注释:这些函数依赖于服务器的本地设置。
安装
date/time 函数是 PHP 核心的组成部分。无需安装即可使用这些函数。
Runtime 配置
日期/时间函数的行为受到 php.ini 中设置的影响。

Date/Time 配置选项:

名称 默认 描述 可改变
date.default_latitude  "31.7667" 规定默认纬度(从 PHP 5 开始可用)。date_sunrise() 和 date_sunset() 使用该选项。 PHP_INI_ALL
date.default_longitude "35.2333" 规定默认经度(从 PHP 5 开始可用)。date_sunrise() 和 date_sunset() 使用该选项。 PHP_INI_ALL
date.sunrise_zenith "90.83" 规定日出天顶(从 PHP 5 开始可用)。date_sunrise() 和 date_sunset() 使用该选项。 PHP_INI_ALL
date.sunset_zenith "90.83" 规定日落天顶(从 PHP 5 开始可用)。date_sunrise() 和 date_sunset() 使用该选项。 PHP_INI_ALL
date.timezone "" 规定默认时区(从 PHP 5.1 开始可用)。 PHP_INI_ALL

gmdate() 函数格式化 GMT/UTC 日期/时间。

同 date() 函数 类似,不同的是返回的时间是格林威治标准时(GMT)。

语法
gmdate(format,timestamp)
参数 描述
format 可选。规定如何返回结果。
timestamp 可选。
提示和注释
注释:在 PHP 5.1.0 之前,负的时间戳(1970 年之前的日期)在某些系统下(例如 Windows)不能工作。

举个例子,我们现在所在的时区是+8,那么服务器运行以下脚本返回的时间应该是这样的:

  当前时间假定是2007-03-14 12:15:27

 代码如下 复制代码

  echo date(‘Y-m-d H:i:s’, time()); 输出为:2007-03-14 12:15:27

  echo gmdate(‘Y-m-d H:i:s’, time()); 输出为:2007-03-14 04:15:27

  但是这只是在Linux+Apache下运行PHP所得的结果,如果在Windows下运行,则2个函数返回都是:2007-03-14 04:15:27。

  所以,我们应该给一个兼容性的写法,统一使用gmdate,并手工设置当前时区,写法改进如下:

 代码如下 复制代码

  echo gmdate(‘Y-m-d H:i:s’, time() + 3600 * 8);

这样不管在Linux+Apache下还是Windows下都得到了正确的结果,当然这样写还有一个好处,当网站是面向全世界的时候,那么网站用户只要设置所在的时区,程序自动根据用户设置的时区进行时间计算,数据库中信息发布时间只存当前的time()所生成的时间,那么在中国+8时区看到的发布时间是:2007-03-14 12:15:27,那么在欧洲+2时区用户看到这个信息的发布时间是:2007-03-14 06:15:27,这样信息的时间就全部对应正确了。

今天做开发时碰到的XmlDocument 创新对象时, 产生 xmlns=\"\" 的,经过分析总结了问题所在,有需要朋友参考一下,可能能帮助你解决这个问题。

 
1. 读取时,应该添加NameSpace.

 

 代码如下 复制代码
var exclDef = excl.SelectSingleNode(@"ns:worksheet/ns:sheetData", excl.GetNameSpaceManager("ns"));      
 public static XmlNamespaceManager GetNameSpaceManager(this XmlDocument xml, string NameSpace)       
{           
XmlNamespaceManager nsmgr = new XmlNamespaceManager(xml.NameTable);            nsmgr.AddNamespace(NameSpace, xml.DocumentElement.NamespaceURI);            return nsmgr;       
}

2. 如果创建 节点,没有指明 NamespaceURI , 则会生成  xmlns="" , 其原因,参考:

       /post_read.asp?BlogID=2524806&PostID=21711977


     如果 ABC 三级的  NameSpaceURI 分别是  XYY , 那么, 生成的 ABC 的  NameSpaceURI分别是  AB空, C 不会生成 NameSpaceURI , 因为, C和其父项具有相同的 NameSpaceURI .


     所以在创建 节点时, 为了不出现 NameSpaceURI , 请保持和节点父项相同的 NameSpaceURI  .

                    var si = e.OwnerDocument.CreateElement("si", e.NamespaceURI);                    e.AppendChild(si);
     另外, 创新 属性时, 不要指定 NameSpaceURI , 即 生成的 Xml 就没有特定的 NameSpaceURI .

                    var r = excl.CreateAttribute("r");

在我们用textarea时会发现回车与空格是不可看到的,所以我们利用str_replace函数将php中的\\n替换成br就可以了哦。有需要的朋友可以参考。
 代码如下 复制代码

function htmtocode($content) {
    $content = str_replace("n", "<br>", str_replace(" ", " ", $content));
    return $content;
}


先替换掉空格,再替换回车。
相当于:

 代码如下 复制代码
function htmtocode($content) {
    $content = str_replace(" ", " ", $content);
    $content = str_replace("n", "<br>",$content);  
    return $content;
}
[!--infotagslink--]

相关文章

  • php读取zip文件(删除文件,提取文件,增加文件)实例

    下面小编来给大家演示几个php操作zip文件的实例,我们可以读取zip包中指定文件与删除zip包中指定文件,下面来给大这介绍一下。 从zip压缩文件中提取文件 代...2016-11-25
  • 删除条目时弹出的确认对话框

    复制代码 代码如下: <td> <a href="/member/life/edit_ppt/<?php echo $v->id;?>" class="btn">编辑</a> <a href="javascript:;" onclick="if(confirm('您确定删除这条记录?')){location.href='/member/life/d...2014-06-07
  • 运行vbs脚本报错无效字符、中文乱码的解决方法(编码问题)

    今天在写一个vbs的时候,发现中文乱码,后来写好代码正常运行的代码压缩一下给了同事,发现报无效字符,经过验证后发现原来是编码的问题导致,这里就为大家分享一下...2020-06-30
  • php 取除连续空格与换行代码

    php 取除连续空格与换行代码,这些我们都用到str_replace与正则函数 第一种: $content=str_replace("n","",$content); echo $content; 第二种: $content=preg_replac...2016-11-25
  • php过滤所有的空白字符(空格、全角空格、换行等)

    在php中自带的trim函数只能替换左右两端的空格,感觉在有些情况下不怎么好使,如果要将一个字符串中所有空白字符过滤掉(空格、全角空格、换行等),那么我们可以自己写一个过滤函数。php学习str_replace函数都知道,可以批量替...2015-10-30
  • php跨网站请求伪造与防止伪造方法

    伪造跨站请求介绍伪造跨站请求比较难以防范,而且危害巨大,攻击者可以通过这种方式恶作剧,发spam信息,删除数据等等。...2013-10-01
  • Centos中彻底删除Mysql(rpm、yum安装的情况)

    我用的centos6,mysql让我整出了各种问题,我想重装一个全新的mysql,yum remove mysql-server mysql之后再install并不能得到一个干净的mysql,原来的/etc/my.cnf依然没变,datadir里面的数据已没有任何变化,手动删除/etc/my.cn...2015-03-15
  • MyBatis-Plus的物理删除和逻辑删除(使用场景)

    数据库中的数据删除会分为两种:物理删除 和 逻辑删除,接下来通过本文给大家介绍MyBatis-Plus的物理删除和逻辑删除使用场景分析,感兴趣的朋友一起看看吧...2021-09-25
  • c#字符串去掉空格的二种方法(去掉两端空格)

    本文主要介绍了字符串去掉两端空格,并且将字符串中多个空格替换成一个空格的方法,需要的朋友可以参考下...2020-06-25
  • mybatis-plus getOne和逻辑删除问题详解

    这篇文章主要介绍了mybatis-plus getOne和逻辑删除,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-08-26
  • C# 复制与删除文件的实现方法

    这篇文章主要介绍了C# 复制与删除文件的实现方法的相关资料,希望通过本文能帮助到大家,让大家理解掌握这部分内容,需要的朋友可以参考下...2020-06-25
  • php过滤所有的空白字符(空格、全角空格、换行等)

    在php中自带的trim函数只能替换左右两端的空格,感觉在有些情况下不怎么好使,如果要将一个字符串中所有空白字符过滤掉(空格、全角空格、换行等),那么我们可以自己写一个过滤函数。php学习str_replace函数都知道,可以批量替...2015-10-30
  • jQuery动态添加与删除tr行实例代码

    最近由于项目的需要,需要动态的添加和删除table中的tr,感觉用JS可以实现,但是在网上找了一下,单纯的自己写JS,感觉太麻烦,而且也不好维护。于是想到了最近学的jQuery。这篇文章给大家用实例介绍了jQuery动态添加与删除tr行的方法,有需要的朋友们可以参考借鉴。...2016-10-20
  • C#删除UL LI中指定标签里文字的方法

    这篇文章主要介绍了C#删除UL LI中指定标签里文字的方法,涉及C#针对页面HTML元素进行正则匹配与替换的相关操作技巧,需要的朋友可以参考下...2020-06-25
  • js实现上传文件添加和删除文件选择框

    这篇文章主要为大家详细介绍了js实现上传文件添加和删除文件选择框 ,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-10-25
  • MybatisPlus实现逻辑删除功能

    这篇文章主要介绍了MybatisPlus实现逻辑删除功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-25
  • C++递归删除一个目录实例

    这篇文章主要介绍了C++递归删除一个目录的实现方法,涉及到目录的操作及递归算法的应用,需要的朋友可以参考下...2020-04-25
  • jQuery中DOM节点的删除方法总结(超全面)

    这篇文章主要介绍了jQuery中DOM节点的删除方法,文中介绍的很相信,内容包括empty()的基本用法、remove()的有参用法和无参用法、empty和remove区别、保留数据的删除操作detach()以及detach()和remove()区别,需要的朋友可以参考借鉴。...2017-01-26
  • C# 去除首尾字符或字符串的方法

    C# 去除首尾字符或字符串的方法,需要的朋友可以参考一下...2020-06-25
  • pycharm 复制代码出现空格的解决方式

    这篇文章主要介绍了pycharm 复制代码出现空格的解决方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-16