zoukankan      html  css  js  c++  java
  • php字符串操作

    1.字符串的格式化

    按照从表单提交数据之后,php处理的不同:接受,显示,存储。也有三种类型的格式化方法。

    1.1字符串的接收之后的整理: trim(),ltrim(),rtrim()

    当数据从表单中上传上来的时候需要对字符串整理一下,去掉字符串前后的空格或者其他字符。
    ** trim()就是去掉字符串前后的空格、制表符、换行符等等。
    ** ltrim()
    去掉左边的,就是清理开头那一端
    ** rtrim()**去掉右边的,就是结尾那一端的
    $name = trim($_POST['name']);

    1.2格式化字符串以便显示

    ** 1.使用HTML格式化:nl2br()**
    接收字符串作为参数,将字符串中的换行符更改为HTML中的
    ,便于在网站页面中显示
    ** 2.改变字符串中的字母大小写**
    ** strtoupper()将字符串转换为大写
    ** stroutlower
    将字符串转换为小写
    ** ucfirst()如果字符串的第一个字符是字母,就将该字符大写
    ** ucwords
    将字符串中的每个单词的第一个字母转换为大写
    ** 3.格式化字符串以便存储:addslashes()**
    数据库有时候会把字符串李米娜的引号,反斜杠,NULL字符当做是控制字符,这样会导致向数据库中存储数据失败。这种情况可以使用转义符来转义,也可以使用我们的转义字符串的函数
    例如使用addslashes()函数:
    $feedback = addslashes(trim($_POST['feedback']));

    2.字符串的链接和分割

    我们会经常从字符串中提取出想要的字符串,以及添加一些字符串。以下就是一些常用的方法函数
    ** 2.1使用函数explode()、implode()、join()**
    ** explode()**接收两个参数,是按照给出的分隔符来分割字符串,并将结果返回到一个数字索引型的字符串里面。还有一个可选参数是用来限制分成字符串小块的数量

    $email = ghoaishg@163.com;
    $email_array = explode('@', $email);
    

    $email_array就是一个数字索引型的字符串,可以通过索引获得自己想要的。
    ** implode()和join()**的作用和explode()完全相反,是从数组中获取数组元素来组成一个新的字符串。接收的第一个参数是你想要用来连接这些元素的分割符,第二个参数是一个数组操作对象,返回结果是一个字符串
    2.2使用strtok()函数
    同explode()的方法差不多,将字符串按照给定的分隔符来分割,不同之处在于srttok()函数每次只会返回被分隔的一部分,一般可以跟while语句连用。这个函数的特点是每次只返回一个
    2.3使用substr()函数
    这个函数是用来截取字符串中的一部分长度的,接收两个参数分别是:需要操作的字符串和开始截取的位置。第三个参数是可选参数,用来限定截取的长度的。
    第二个参数也可以是负数,负数表示从字符串的末尾向前数
    substr($test, -9);

    3.字符串的比较

    3.1字符串的排序:strcmp(),strcasecmp(),strnatcmp()
    这三个函数都是比较两个字符串大小的。来看函数原型
    int strcmp(string str1, string str2);
    接受两个参数,分别是str1和str2,按照字典的顺序进行比较,如果str1比str2大(即str1在str2后面)则返回1,相等返回0,这个函数区分大小写。
    strcasecmp()用法相同,在strcmp()的基础上增加不再区分大小写。
    strnatcmp()函数在strcasecmp()的基础上增加按照自然顺序比较,所以这个函数是不去分大小写,且按照人们的习惯进行排序的。
    使用strlen()函数测试字符串的长度
    这个函数可以用来测试数组的长度,也可以用来测试字符串的长度

    4.使用字符串函数匹配和替换字符串

    判别是否有特定字符串,并得到字符串的位置,还可以该字符串进行替换
    4.1在字符串中查找字符串:strstr()、strchr()、strrchr()、stristr()
    上面几个函数的作用是:在一个字符串中查找另一个字符串,php中strchr和strstr是完全一样的。
    strstr()函数原型
    string strstr(string str1,string needle);
    接受两个参数,第一个是目标字符串,第二个是要查找的关键字。
    返回第一个匹配的关键字,如果不存在就返回false.
    该函数是区分大小写的,如果向不区分大小写,可以使用stristr()
    strrchr用法相同,只不过会返回最后一个匹配的关键字。
    4.2查找字符串的位置:strpos(),strrpos()
    strpos的作用也是用来子一个字符串中查找关键字,但是却不是返回关键字,而是返回关键字开始的位置。函数原型如下:
    int strpos(strinig haystack, string needle, int[offset]);
    第一个参数是要被查找的字符串,第二个是关键字。第三个是可选的参数,表示从字符串的哪一个位置开始查找。
    strrpos()用法相同,只不过返回的是最后一个匹配的位置。
    4.3替换字符串:str_replace()、substr_replace()
    这两个字符串的作用很大,可以将查找的字符串进行替换。
    mixed str_replace(mixed needle, mixed new_needle, mixed haystack [, int & count]);
    参数分别为:需要查找的关键字,用于替换的关键字,字符串操作对象,一个可选的操作次数
    substr_replace()的作用是用关键字将字符串的指定位置给替换掉。
    string substr_replace(string string ,string replacement, int start, int[length])
    接受的参数为:字符串操作对象,需要替换的关键字,开始替换的位置和一个可选的参数为从开始到结束的长度。
    4.4用正则表达式查找字符串:ereg()、eregi()
    此函数是用正则表达式来查找字符串中查找,看看有没有匹配,函数原型为:
    int ereg(string pattern, string search, array[matches]);
    第一个参数是正则表达式,第二个是字符串操作对象,可选的第三个是用来保存保存匹配的字符串,因为经常会有好几个匹配。
    eregi()函数跟上面是一样的,只是不再区分大小写。
    4.5用正则表示达替换字符串
    使用函数str_replace()函数
    4.6使用正则表达式分割字符串
    这个也是比较使用的功能,使用的是split()函数
    array split(string pattern, string search[, int max]);
    返回的结果是一个数组集合,第一个参数是正则表达式,第二个是字符串,第三个可选的是进入数组的个数。

  • 相关阅读:
    python cookbook 笔记二
    python cookbook 笔记一
    aircrack-ng笔记
    TeamCity 和 Nexus 的使用
    Linux 搭建 nexus 私服【转】
    maven阿里云镜像
    kali linux 破解wpa密码
    python正则表达式二[转]
    Java并发编程:Synchronized底层优化(偏向锁、轻量级锁)
    集合解析
  • 原文地址:https://www.cnblogs.com/cenyu/p/6528384.html
Copyright © 2011-2022 走看看