字符串常用函数

获取字符串长度函数

/*
* strlen函数
* int strlen($var)
* 获取字符串或数字的长度
*/
$a = 'hello, woRld';
$b = '王昭';  //utf8格式下,每个汉字3个字节长
$c = 1111;
echo strlen($a),"\n", strlen($b), strlen($c), "\n";

大小写转换函数

/*
* string strtolower(string $str):字符串所有的字母转换为小写
* string strtoupper(string $str):字符串所有的字母转换为大写
*
* string ucfirst(string $str):将字符串的首字母大写,其他字母不变
* string ucwords(string $str):将字符串中每个单词的首字母大写,其他字母不变
*
*/
$a = 'hello, world zhanGsan';
echo strtolower($a), "\n";
echo strtoupper($a), "\n";echo ucfirst($a), "\n";
echo ucwords($a), "\n";

字符串替换函数

//字符串替换函数
/*
* str_replace($search, $replace, $str):实现字符串替换,区分大小写
* str_ireplace($search, $replace, $str):实现字符串的替换,不区分大小写
*
* $search:被替换字符串
* $replace:替换字符串
* $str:主字符串
*
*/
$a = 'this is a test';
echo str_replace('is','is\'t', $a), "\n";
echo str_ireplace('THIS', 'that', $a), "\n";//将'ZenD_CONTRollER_FronT'变成'Zend_Controller_Front'
$str = 'ZenD_CONTRollER_FronT';
$str = strtolower($str);
$str = str_replace('_', ' ', $str);
$str = ucwords($str);
$str = str_replace(' ', '_', $str);
echo $str, "\n";

和html实体相关的函数

/*
* htmlspecialchars函数
* string htmlspecialchars(string $str)
* 描述:预定义的字符转换为html实体
*
*/
$a = 'A>B, B<A';
echo htmlspecialchars($a), "\n";

删除空白或其他字符相关的函数

/*
* ltrim函数
* string ltrim(string $str[, string $charlist])
* 描述:实现删除字符串开始位置的空格或其他字符
* charlist规定从字符串中删除哪些字符,如果省略该参数,则移除所有的空白字符(空格、换行、回车等)
*
* rtrim函数
* string rtrim(string $str[, string $charlist])
* 描述:实现删除字符串结束位置的空格或其他字符
*
* trim函数
* string trim(string $str[, string $charlist])
* 描述:实现删除字符串开始和结束的位置的空格或者其他字符
*
*/
$a = '  ABC   ';
echo $a, '长度为'.strlen($a), "\n";
echo ltrim($a), '长度为'.strlen(ltrim($a)), "\n";
echo rtrim($a), '长度为'.strlen(rtrim($a)), "\n";
echo trim($a), '长度为'.strlen(trim($a)), "\n";

字符串位置相关的函数

/*
* strpos函数
* int strpos(string haystack, mixed needle [,int offset])
* 描述:将返回一个字符串在另一个字符串第一次出现的位置,区分大小写
*
* stripos函数
* int strpos(string haystack, mixed needle [,int offset])
* 描述:将返回一个字符在另一个字符第一次出现的位置,忽略大小写
*
* strrpos函数
* int strrpos(string haystack, mixed needle [,int offset])
* 描述:将返回一个字符串在另一个字符串最后一次出现的位置,区分大小写
*
* strripos函数
* int strripos(string haystack, mixed needle [,int offset])
* 描述:将返回一个字符串在另一个字符串最后一次出现的位置,忽略大小写
*
*/
$a = 'this is test';
echo strpos($a, 'is'), "\n";
//echo strpos($a,'Is'), "\n";
var_dump(strpos($a,'Is'));  //不存在,返回false
echo stripos($a,'Is'), "\n";  //忽略大小写,存在echo strrpos($a, 'is'), "\n";
echo strripos($a,'Is'), "\n";

字符串截取函数

/*
* substr函数
* string substr(string $str, int $start[, int $length])
* 描述:截取字符串
* 说明:如果省略length,则返回从start至字符串结尾之间的字符串
*      如果startw为负数,则倒数,如果length为负数,表示从开始位置截取到结束位置
*
*/
$str = 'javascript';
echo substr($str, 5), "\n";
echo substr($str, 0, 5), "\n";
echo substr($str, -5, 5), "\n";
echo substr($str, -5,-2), "\n";//得到文件的扩展名
$str = 'a.b.c.txt';
$locate = strrpos($str, '.');  //获取最后一个点的位置
echo substr($str, $locate+strlen('.')), "\n";  //截取点后面的字符串,即是拓展名

字符串截取函数

/*
* strstr函数
* string strstr(string $haystack, mixed $needle)
* 描述:将搜索一个字符串在另一个字符串中第一次出现的位置,然后返回字符串的其余部分,区分大小写
*
* stristr函数
* string stristr(string $haystack, mixed $needle)
* 描述:将搜索一个字符串在另一个字符串中第一次出现的位置,然后返回字符串的其余部分,忽略大小写
*
* strrchr函数
* string strrchr(string $haystack, mixed $needle)
* 描述:将搜索字符串在另一个字符串中最后一次出现的位置,然后返回字符串的其余部分,区分大小写
*
*/
$str = 'this Is a test';
echo strstr($str, 'is'), "\n";
echo stristr($str, 'is'), "\n";
echo strrchr($str, 'is'),"\n";//得到文件的扩展名
$str = 'a.b.c.txt';
echo substr(strrchr($str, '.'), 1),"\n";

反转字符串函数

/*
* strrev函数
* string strrev(string $string)
* 描述:反转字符串
*
*/
$str = 'hello, world';
echo strrev($str),"\n";

字符串加密函数

/*
* md5函数
* string md5(string $str)
* 描述:实现计算字符串的md5哈希值
*
* str_shuffle函数
* string str_shuffle(string $str)
* 描述:随机打乱字符串,可用于产生随机验证码
*/
$str = 'imooc';
echo md5($str),"\n";
echo str_shuffle($str),"\n";

分割字符串函数

/*
* explode函数
* array explode(string $delimiter, string $string[, int $limit])
* 描述:使用一个字符串分割另一个字符串,返回一个数组,$limit限制数组内元素的个数
*
* implode函数
* string implode(string $glue, array $pieces)
* string implode(array $pieces)
* 描述:将一个一维数组的值转化为字符串
*
*/
$str = 'this-is-a-test';
$arr = explode('-', $str);
print_r($arr);echo implode('-', $arr),"\n";  //使用'-'将数组内元素连接起来
echo implode($arr),"\n";  //将数组内元素连接起来,功能和'.'相同

格式化字符串函数

/*
* sprintf函数
* string sprintf(string $format[, mixed $args[, mixed $...]])
* 描述:格式化字符串,和OC中NSLog(..)类似
* 注意:如果%符号多于arg参数,则必须使用占位符,占位符位于%符号之后,由数字和"\$"组成
*
* $format参数,规定字符串以及声明变量的格式类型,取值为:
* %%:返回一个百分号%
* %b:二进制数
* %d:包含正负号的十进制数(负数、0、正数)
* %e:使用小写的科学计数法(例如:1.2e+2)
* %s:字符串
* %f:浮点数
*
* 附加的格式,必须放置在%和字母之间(例如%.2f):
* - + :定义数字的正负
* [0-9]:规定变量值的最小宽度
* .[0-9]:规定小数位数或最大字符串长度
*
*/
$num = 5;
$str = 'Tom';
echo sprintf("this is %d test, %s", $num, $str),"\n";
echo sprintf("this is %1\$s test, %1\$s", $str),"\n";
echo sprintf("带两位小数:%1\$.2f 不带小数:%1\$d", $num),"\n";

PHP学习记录(字符串函数)相关推荐

  1. python大神的成长之路_Python大神成长之路: 第三次学习记录 集合 函数 装饰 re...

    学习记录day03 字符串可以直接切片,But字符串不可修改 字符串修改:生成了一个新的字符串 LIst修改,在原基础上修改(原内存上) 集合是一个无序的,不重复的数据组合,它的主要作用如下: 去重, ...

  2. PHP记录 字符串 函数

    •addcslashes - 以C 语言风格使用反斜线转义字符串中的字符 •addslashes - 使用反斜线引用字符串(一般在sql语句中是经常用到的,将一个不必要的引号转义成字符串,让它不具备特 ...

  3. mysql添加字符串日期时间_mysql学习笔记--- 字符串函数、日期时间函数

    一.常见字符串函数:1.CHAR_LENGTH  获取长度(字符为单位) 2.FORMAT  格式化 3.INSERT  替换的方式插入 4.INSTR  获取位置 5.LEFT/RIGHT  取左. ...

  4. python学习之字符串函数用法

    #1.find :返回查找字符串的下标位置.如果返回是-1,代表的是没有查到该字符.rfind :是从右边到左边username = 'hello yaya' index = username.fin ...

  5. Python学习记录——구 字符串

    输入 使用input()来接收 password = input('请输入您的密码:') print(f'您输入的密码是{password}') print(type(password)) 请输入您的 ...

  6. JVM学习记录-字符串常量池

    学习宋红康老师和深入理解java虚拟机中关于String的理解和笔记,如下是自己的学习整理和理解,如果有理解错误望指正 文章目录 1.字符串常量池 字符串常量池的位置 字符串常量池的哈希表结构 案例代 ...

  7. JavaScript学习记录 (三) 函数和对象

    1.函数 使用 function 关键字来声明函数 函数的命名规则和变量一样 JS没有函数签名,所以没有函数重载 JS函数中的所有参数都是值传递:不能通过引用传递 // 定义函数 function t ...

  8. 廖雪峰JS教程学习记录---字符串

    1.由于多行字符串用\n写起来比较费事,所以最新的ES6标准新增了一种多行字符串的表示方法,用'...'表示`这是一个 多行 字符串`; 2.字符串常见的操作如下: s.length; // 13 要 ...

  9. MySQL学习记录—Date函数系列

    文章目录 Date数据类型 MySQL中最重要的日期函数 MySQL日期格式化函数: date_format() MySQL日期减法函数 date_sub() MySQL日期加法函数 date_add ...

  10. 对比python字符串函数,学习pandas的str矢量化字符串函数

    1.概述 python字符串应该是python里面最重要的数据类型了,因此学会怎么处理各种各样的字符串,显得尤为重要. 我们不仅要学会怎么处理单个字符串,这个就需要学习"python字符串函 ...

最新文章

  1. 一个类的实例是另一个类的属性python_Python中的类属性和实例属性引发的一个坑...
  2. 【数理知识】方程一阶二阶及常用词语含义
  3. Python列表操作:统计列表中的重复项出现的次数的方法,不懂也要知道的python知识
  4. ITK:计算灰度图像的梯度幅度
  5. Django从理论到实战(part36)--QuerySet转换SQL
  6. How is SCM product maintenance tcode redirecting access to MARA
  7. thinkphp php 5.2,ThinkPHP5.2:时间查询(改进、优化)
  8. PostgreSQL and SQLAlchemy [ubuntu]
  9. [Lintcode]118. Distinct Subsequences/[Leetcode]115. Distinct Subsequences
  10. 酒店管理系统程序设计
  11. ConcurrentHashMap源码分析
  12. teamviewer超时后连接被阻断。您的许可证对您与伙伴的最大话时间有所限制
  13. 计算机音乐三只小熊,三只小熊教案音乐
  14. ubuntu18.04下nvidia-settings无法保存设置
  15. 前端案例:蓝色CSS3二级导航菜单
  16. 头歌--Java入门 - 分支结构
  17. 关于CStdioFile
  18. 牛客网项目--MyBatis
  19. rclone挂载webdav
  20. 吉林大学设计模式第四次作业(上)

热门文章

  1. 全球及中国钒(V)蒸发材料行业发展动态分析及未来前景预测报告2021年版
  2. 不是HR,Leader你会面试应聘者吗
  3. spring suite tool 添加namespace时只有bean一个
  4. ZOJ - 3872 Beauty of Array
  5. MyEclipse+Tomcat+MAVEN+Git项目完整环境搭建
  6. STM32应用实例六:与MS5837压力传感器的I2C通讯
  7. TOMCAT报错:HTTP Status 404 -
  8. 论软件的模块化与架构
  9. iPhone开发入门守则:Objective-C编码规范--系列教程
  10. MyEclipse 中修改JSP模板