PHP学习笔记——6.字符串

1.定义方式

①双引号方式

  例:$str = "hello";

  注:在使用双引号进行字符串定义时,字符串内部不能再出现双引号

  因为PHP会将其当成字符串边界进行解析

  例:$str = " hello,"susan" "; =>hello,

  此时,可对内部双引号进行转义,使用\"表示无语义的"

  则:$str = " hello,\"susan\" ";

  其它需要转义的符号:

  \" => " \n => 换行 \\ => \

  \r => 回车 \$ => $ \‘ => ‘

②单引号方式

  使用单引号定义的字符串,PHP不会做复杂的转义

  只转义\‘及\\ 其他一律原样输出

  单引号字符串的$..直接作为字符串输出

  而双引号会试着将其作为变量进行解析

  如何选择单/双引号?

  大段文字,使用单引号,解析快

  而如果确实要在字符串中夹杂变量,则需要使用双引号

③heredoc写法

  <<<标识符

  大段文本(包含双引号、单引号)

  标识符; =>一定独占一行,且前面没有任何字符

  功能:与双引号一致,会解析内部转义、变量等

④nowdoc写法

  <<<‘标识符‘

  大段文本

  标识符;

  功能:与单引号一致

2.字符串的类数组特性

  例:$str = ‘abcdef‘;

  echo $str[0]; =>a

3.字符串长度函数

  strlen(字符串变量); =>计算字符串字节数量

  注:UTF-8中一个汉字占三个字节

  mb_strlen(字符串变量,[字符集]); =>计算字符串字符数量

4.查找字符串中子字符位置函数

  strpos(字符串变量,‘查找目标‘,[偏移量]); =>从起始开始计算经过多少个字符是目标字符

  注:该函数所查找的目标是区分大小写的

  若‘查找目标‘填写的是整数,则会将整数转换为ASCII码

  在ASCII码中:

  65~90 => A~Z 97~122 => a~z

  在进行if判断时,若第一个(0)即是目标,则会返回false,此时可适用===进行判断

  例:if(strpos()===false){

  return false;

  }else{

  return true;

  }

  偏移量即略过一定数量再进行查找

  stripos() =>作用同上,单其查找的目标不区分大小写

  strrpos() =>目标字符最后一次出现的位置

  substr_count() =>计算目标出现的次数

5.字符串替换函数

  str_replace(‘原始‘,‘替换成‘,字符串变量,[替换次数]);

  ‘原始‘及‘替换成‘均可是混合类型,如数组

  若同时替换两个,每次都是从头开始找

  strtr(字符串变量,‘原始‘,‘替换成‘);

  ‘原始‘与‘替换成‘进行对应,一个字符对应一个字符进行替换

  例:‘hi‘与‘ab‘ 则h=>a i=>b

  实际应用中,可进行全/半角转换等

6.字符串截取函数

  substr(字符串变量,从哪开始,[到哪结束]);

  从哪开始 若填写的是负数,则从右往左进行

  例:substr(‘123456‘,2,-2); =>34

  strstr(字符串变量,目标字符,[true]);

  截取 第一次出现的目标字符~结尾 的部分

  若增加true可选项,则是~开头部分

  strrchr(字符串变量,目标字符,[true]);

  截取 最后一次出现的目标字符~结尾 的部分

  实际应用中可用于判断文件格式

7.字符串的分割、连接、反转函数

  Ltrim(字符串变量,‘需修剪字符‘);

  Rtrim(字符串变量,‘需修剪字符‘);

  str_split(字符串变量,[n]);

  将字符串分割成n个字母一组,总体形成一个数组

  explode(‘分割符‘,字符串变量);

  用指定的分割符将字符串分成多组,总体形成一个数组

  implode([‘连接符‘],数组变量);

  用连接符将数组中的所有单元值连接成一个字符串

  chunk_split(字符串变量,隔几个字符,[‘增加字符‘]);

  例:chunk_split($str,3,‘,‘); =>为$str字符串每隔3个字符添加一个逗号

  若不填增加字符,增自动增加换行符

  strrev(字符串变量); =>反转字符串 abc=>cba

8.字符串转义函数

  addslashes(字符串变量);

  在数据库操作时,诸如单引号等特殊字符会带来破坏作用,

  当用户输入单引号时,可利用该函数在单引号前加\进行转义

  stripslashes(字符串变量);

  将特殊字符转换为html实体,如 < > => $lt; $gt;

  htmlspecialchars_decode(字符串变量);

  将html实体转换为特殊字符

9.字符串比较函数

  strcmp(‘字符串1‘,‘字符串2‘); =>返回bool值

10.字符串转换函数

  strtolower(字符串变量); =>全大写

  strtoupper(字符串变量); =>全小写

  ucfirst(字符串变量); =>首字母大写

11.系统函数

  pathinfo(字符串变量); =>返回其信息,如名称、后缀等

  number_format(字符串变量); =>将字符串以千分位表示 1,234,567

作者:@zhnoah
出处:http://www.cnblogs.com/zhnoah/
本文版权归本人和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连 
接,否则保留追究法律责任的权利。

时间: 2024-10-29 19:11:40

PHP学习笔记——6.字符串的相关文章

Swift学习笔记(4)--字符串及基本使用

String是例如"hello, world","海贼王" 这样的有序的Character(字符)类型的值的集合,通过String类型来表示. Swift 的String类型与 Foundation NSString类进行了无缝桥接.如果您利用 Cocoa 或 Cocoa Touch 中的 Foundation 框架进行工作.所有NSString API 都可以调用您创建的任意String类型的值.除此之外,还可以使用本章介绍的String特性.您也可以在任意要求传

3. 蛤蟆Python脚本学习笔记三字符串

3. 蛤蟆Python脚本学习笔记三字符串 本篇名言:"平静的湖面只有呆板的倒映,奔腾的激流才有美丽的浪花!幸福不是靠别人来布施,而是要自己去赢取!生命的意义在不断挑战自己,战胜自己!" 这个本来放在昨天的,由于昨晚又太晚了,所以就搁在这里了.赶紧看看吧. 字符串两边都用双引号或者单引号包起来.否则就使用转移符号来转移一下. 输入在一起可以直接拼接. 欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/48112507

day5_python学习笔记_chapter6_字符串列表元组

1. 序列:seq[n], seq[x:y], seq * n序列重复n次,切片, 序列翻转 s="abcde", s[::-1]="edcba" 内建函数:1. 类型转换: list(iter), str(obj), unicode(obj), tuple(iter) , 2. len(seq), max(), min() , reversed(), sorted(), sum(), 2. 字符串: in ,not in ,,, import string , s

Java学习笔记_18_字符串、包装类、原始数据类剪得转换

18. 字符串.包装类.原始数据类剪得转换: 各个转换如下: 1>String 转换成Integer: Integer integer = new Integer("string");或 Integer Integer = Integer.valueOf(String): 注:String必须是数字字符串,如:"1232". 2>Integer 转换成String: String str = Integer.toString(); 3>Intege

Perl语言学习笔记 14 字符串与排序

1.字符串内用index搜索 $where = index($words,$word); ##从words里找到首次出现word的位置,下标从0开始,查找失败则返回-1: 指定开始搜索的地方:$where = index($words,$word,10); ##从10开始往后寻找,包含10 搜索子串最后出现的位置: 限定返回的最大位置:$where = rindex($words,$word,10); ##只搜索下标为10以前的字符. 2.处理子串 substr参数:依次为:字符串.起始下标.要

Python学习笔记--Python字符串连接方法总结

声明: 这些总结的学习笔记,一部分是自己在工作学习中总结,一部分是收集网络中的知识点总结而成的,但不到原文链接.如果有侵权,请知会,多谢. python中有很多字符串连接方式,总结一下: 1)最原始的字符串连接方式:str1 + str2 这个估计是Python中最常用的方式,直接用 “+” 来连接两个字符串: 'Jim' + 'Green' = 'JimGreen' 2)python 新字符串连接语法:str1, str2 第二种比较特殊,如果两个字符串用“逗号”隔开,那么这两个字符串将被连接

ES6学习笔记(二)——字符串扩展

相信很多人也和我一样,不喜欢这样循规蹈矩的逐条去学习语法,很枯燥乏味.主要是这样学完一遍之后,没过一段时间就忘到九霄云外了.不如实际用到的时候研究它记得牢靠,所以我就整理成笔记,加深记忆的同时便于复习查看. 在这样不断的学习过程中,也提高了自己的总结能力:) 1.字符串的遍历器接口 ES5,数组和对象可以进行遍历,使用for() 和 for...in,还有jq中的each()方法进行遍历. ES6为我们提供了字符串遍历器  for...of 循环遍历 优点:可以识别大于0xFFFF的码点,传统的

Go学习笔记(3)字符串

Go 语言中的字符串以及常用的两个字符串处理包. 二. 字符串 Go语言中的字符串是 UTF-8 字符的一个序列(当字符为 ASCII 码时则占用 1 个字节,其它字符根据需要占用 2-4 个字节).UTF-8 是被广泛使用的编码格式,是文本文件的标准编码,其它包括 XML 和 JSON 在内,也都使用该编码.由于该编码对占用字节长度的不定性,Go 中的字符串也可能根据需要占用 1 至 4 个字节,这与其它语言如 C++.Java 或者 Python 不同.Go 这样做的好处是不仅减少了内存和硬

python学习笔记之字符串(str)

字符宽度和精度: >>> from math import pi >>> '%10f'%pi   #字段宽10 '  3.141593' >>> '%10.2f' %pi #字段宽10,精度2 '      3.14' >>> '%.2f'%pi #精度2 '3.14' >>> '%.5s' %'Guido van Rossum' #指定获取字符串的个数 'Guido' >>> '%-10.2f' 

Python学习笔记(字符串)

一变量 1创建变量:d=4   表示将整型对象‘4’赋值给变量d 记住:一切数据都是对象 记住:一切变量都是数据对象的一个引用 分析:Python内部的引用计数.sys.getrefcount 2变量命名规范: (1)只能用字母和下划线 (2)不能用关键字如if等 (3)大小写敏感 3赋值: 记住多态特性 多重赋值 删除:del 一个等号=是赋值,两个等号==是比较 注意:三内置必须用熟.type,help,dir 4常用基本数据类型: (1)    int整型 (2)    boolean布尔