php系统核心库自带的函数中,字符串比数组函数较为简单,但还是有一些较为复杂但又很常用的函数,比如下面的这些函数

explode()函数

用一个字符串来分割另一个字符串,返回结果是一个数组

explode(字符串型分隔符,目标字符串,设置返回数组元素的上限)

特例1.如果分割符为空字符串,函数返回false

特例2.如果分割符在目标字符串中不出现,且第三个参数为负数,函数返回空数组

  1. $pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
  2. var_dump( explode(" ", $pizza) );
  3. // array(6) {
  4. // [0] =>
  5. // string(6) "piece1"
  6. // [1] =>
  7. // string(6) "piece2"
  8. // [2] =>
  9. // string(6) "piece3"
  10. // [3] =>
  11. // string(6) "piece4"
  12. // [4] =>
  13. // string(6) "piece5"
  14. // [5] =>
  15. // string(6) "piece6"
  16. // }

特例

  1. // 特例1
  2. $pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
  3. var_dump( explode("", $pizza, -2) );
  4. // bool(false)
  5. // 特例2
  6. $pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
  7. var_dump( explode(",", $pizza, -2) );
  8. // array(0) {
  9. // }

strpos()函数

查找针字符串在大海字符串中首次出现的位置,返回整型位置,或没找到false

strpos(大海字符串,针字符串,默认为0的查找位置)

大海捞针,其他类型的针会被转成字符串,默认为0的查找位置可以设置为1,2,3等等,php7.1之后这个参数才支持负数,没找到返回false

  1. // 忽视位置偏移量之前的字符进行查找
  2. $newstring = 'abcdef abcdef';
  3. $pos = strpos($newstring, 'a', 1); // $pos = 7, 不是 0

除此之外,strrpos ()函数则是 逆向查找首次出现的位置,或者说是 正向查找最后一次出现的位置。

substr()函数

获得目标字符串的子字符串

substr(目标字符串,整型开始位置,整型长度):子字符串或false

  1. // 开始位置为负
  2. $rest = substr("abcdef", -1); // 返回 "f"
  3. $rest = substr("abcdef", -2); // 返回 "ef"
  4. $rest = substr("abcdef", -3, 1); // 返回 "d"
  5.  
  6. // 截取的长度为负
  7. $rest = substr("abcdef", 0, -1); // 返回 "abcde"
  8. $rest = substr("abcdef", 2, -1); // 返回 "cde"
  9. $rest = substr("abcdef", 4, -4); // 返回 ""
  10. $rest = substr("abcdef", -3, -1); // 返回 "de"
  11.  
  12. // 返回false的情况
  13. $rest = substr("abcdef", 7, 1); // 返回 false
  14. $rest = substr("abcdef", 2, -5); // 返回 false
  15.  
  16. // 返回空字符串
  17. $rest = substr("abcdef", 1, -5); // 返回 ''
  18. $rest = substr("abcdef", 1, 0); // 返回 ''
  19. $rest = substr("abcdef", 1, false); // 返回 ''
  20. $rest = substr("abcdef", 1, null); // 返回 ''

php中比较复杂但又常用的字符串函数的更多相关文章

  1. 【python游戏编程之旅】第四篇---pygame中加载位图与常用的数学函数。

    本系列博客介绍以python+pygame库进行小游戏的开发.有写的不对之处还望各位海涵. 在上一篇博客中,我们学习了pygame事件与设备轮询.http://www.cnblogs.com/msxh ...

  2. php常用的字符串函数

    addslashes -- 使用反斜线引用字符串 chr -- 返回相对应于 ascii 码值所指定的单个字符. chunk_split -- 将字符串分割成小块 count_chars --  返回 ...

  3. 常用的字符串函数-S

    header('content-type:text/html;charset=utf-f'); /* $var=addslashes($_GET['username']);//转义表单提交内容中的引号 ...

  4. 内核开发知识第一讲.内核中的数据类型.重要数据结构.常用内核API函数.

    一丶内核中的数据类型 在内核中.程序的编写不能简单的用基本数据类型了. 因为操作系统不同.很有可能造成数据类型的长度不一.而产生重大问题.所以在内核中. 数据类型都一定重定义了. 数据类型 重定义数据 ...

  5. mysql中常用的字符串函数

    写在分割线之前,个人以为,数据库应该具备简单的的数据加工能力.如同食品在吃之前,是要经过很多到工序的,有经过初加工.粗加工.精加工.深加工等.那么mysql也应该并必须担任起数据初加工以及粗加工的责任 ...

  6. PHP中常用的字符串函数?

    1.strlen() 2.strpos() 3.mb_strlen()

  7. C常用的字符串函数实现

    /** 查找字符串 source 中 是否有指定的子串出现,如果有返回第一个匹配的字符 @param source 源 @param chars 目标 @return 返回值 */ char *fin ...

  8. 【C】常用的字符串函数

    1. strcpy 函数名:strcpy 用法:char *strcpy(char *destin, char *cource) 功能:将一个字符串从一个拷贝到另外一个 程序示例: #include ...

  9. oc语言常用的字符串函数

    #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { ...

随机推荐

  1. c和s标签

    <s:if test="#request.iflag=='fj'"> <a title="复检录入" href="javascrip ...

  2. centos7磁盘分区、格式化、挂载

    1.分区:a. 查看磁盘分区表: # fdisk -l b. 查看指定磁盘分区表: # fdisk -l /dev/sdb c. 分区命令: fdisk /dev/sdb 常用命令: n:创建新分区 ...

  3. DELPHI LINUX中间件隆重发布

    LINUX和WINDOWS是目前最流利的两个服务器操作系统,各种云服务商也是同时提供这2种操作系统的云服务器. 即日起,在原有WINDOWS中间件的产品基础上,再隆重推出新产品:LINUX中间件.这样 ...

  4. React Hooks介绍和环境搭建(一)

    React Hooks 简介 2018年底FaceBook的React小组推出Hooks以来,所有的React的开发者都对它大为赞赏.React Hooks就是用函数的形式代替原来的继承类的形式,并且 ...

  5. Java 泛型高级

    1.限制泛型可用类型 在定义泛型类别时,预设可以使用任何的类型来实例化泛型中的类型,但是如果想要限制使用泛型的类别时,只能用某个特定类型或者其子类型才能实例化该类型时,使用extends关键字指定这个 ...

  6. 性能分析 函数粒度 函数里的一条语句 汇编 反编译 机器指令 %rbx,%rbp

    在Linux下做性能分析3:perf - 知乎 https://zhuanlan.zhihu.com/p/22194920 Linux Perf 性能分析工具及火焰图浅析 - 知乎 https://z ...

  7. python+opencv抠图并旋转(根据坐标抠图)

    import cv2 import numpy as np def subimage(image, center, theta, width, height): theta *= np.pi / 18 ...

  8. PHP获取远程文件的大小,通过ob_get_contents实现

    function remote_filesize($uri,$user='',$pw='') { ob_start(); $ch = curl_init($uri); curl_setopt($ch, ...

  9. python监控rabbitmq的消息队列数量

    [root@localhost chen]# cat b.py #!/usr/bin/python # -*- coding: UTF-8 -*- import json,time import re ...

  10. Composer 安装 Jira API 库

    环境要求: PHP >= 5.5.9 php JsonMapper phpdotenv 安装 下载安装 Composer curl -sS https://getcomposer.org/ins ...