PHP字符串
admin
2023-06-19 19:01:30
0

1 PHP字符串基础知识

  定义:字符结合,在C语言中类似字符数组的概念。

  表达方式:

    1)单引号:不解析变量

    2)双引号

    解析字符 \n \r \t \v \e \f \\ \$ \"

    \[0-7]{1,3}  八进制方式表达的字符

    \x[0-9a-Fa-f]{1,2} 十六进制方式表达的字符

   3)heredoc

    1:标识符的名称和变量名的要求一样. 

    2:heredoc的标识符,一定是独占一行,而且前面没有任何其他字符

    3:heredoc对文本的处理,和 双引号一样,即\r\n\t,变量,等,能解析出来.

  4)noewdoc

    写法和heredoc一样,但是效果和单引号一样,不转义\n \r \t 变量等。

 

2 PHP字符串内部存储方式

  struct

    {

    char *val;  字符指针

    int len;    int 长度 当前字符串的长度

  }str;

    1.c语言的字符指针 即字符数组  ,所以可以通过[]或{}来访问某一个字符。

    2.字符串长度可以达到2G内存。

    3.常见函数都是单字节处理方式

    4.二进制安全的。原因:结构体len表示结构体长度。比如c语言中字符串是指连续的内存空间,以'\0'结尾,所以当字符串中包含'\0'的时候,会截断字符串。

3 串行化字符串

  方法:

    1.函数serialize().

    2json_encode().

    3.var_export($item,true);

    serialize不仅仅可以转化数组还可以转换对象,效率上json_encode高效

4 字符编码

    字符集(Charset):是一个系统支持的所有抽象字符的集合。字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。

    字符编码(Character Encoding):二进制与字符的映射关系,就是将字符转换为计算机可以接受的数 字代码。就是以二进制的数字来对应字符集的字符。

  常见字符编码:

   ASCII  美国

   字符集:包括控制字符(回车 退格);可显示字符(英文大小写字符、阿拉伯数字和西文符号)   编码:7位表示一个字符 共计(2的7次方)128个字符。

   ISO-8859-1(latin1) 西欧国家

    Big5 台湾

    GB2312  中国 6763个汉字 和非汉字682个 2个字节表示    Gbk 18030个汉字

    Unicode 字符集 (统一码、万国码、单一码、标准万国码)是业界的一种标准,它可以使电脑得以体现世界上数十种文字的系统

5 Utf-8和Gbk编码原理

    UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码(定长码),也是一种前缀码。它可以用来表示Unicode标准中的任何字符,且其编码中的第一个字节仍与ASCII兼容,这使得原来处理ASCII字符的软件无须或只须做少部份修改,即可继续使用。因此,它逐渐成为电子邮件、网页及其他存储或传送文字的应用中,优先采用的编码。互联网工程工作小组(IETF)要求所有互联网协议都必须支持UTF-8编码。

    UTF-8使用一至四个字节为每个字符编码:

    1.128个US-ASCII字符只需一个字节编码(Unicode范围由U+0000至U+007F)。

    2.带有附加符号的拉丁文、希腊文、西里尔字母、亚美尼亚语、希伯来文、阿拉伯文、叙利亚文及它拿字母则需要二个字节编码(Unicode范围由U+0080至U+07FF)。

    3.其他基本多文种平面(BMP)中的字符(这包含了大部分常用字)使用三个字节编码。

    4.其他极少使用的Unicode辅助平面的字符使用四字节编码。


6 :字符串特性

  1.可以使用大括号{}来使用;

  2.用超出字符串长度的下标写入将会拉长字符串并且以空格填充。

  3.非整数类型下标会被转成整数,非法下标类型会产生一个E_NOTICE的错误。


相关内容

热门资讯

伊媒公布对美备忘录草案,白宫:... 在伊朗媒体披露美伊“初步非正式备忘录”,称美将解除海上封锁并换取霍尔木兹通航后,白宫方面迅速予以否认...
吴思瑶批蒋万安又翻车?游淑慧举... 海峡导报综合报道 英伟达进驻台北北投士林科技园区(北士科),用电问题引发台北市长选战攻防。民进党民代...
俄军空袭强度骤升,泽连斯基紧急... 在俄罗斯加大对乌克兰空袭力度,并威胁打击基辅决策中心之际,乌克兰总统泽连斯基紧急致信特朗普。《基辅独...
禁止中国厂商参与欧盟电信网络?... 【文/观察者网 熊超然】当地时间5月27日,彭博社援引知情人士报道称,德国和西班牙正带头反对欧盟委员...
男子为方便上下班两次拆除路中隔... 道路中央隔离护栏是规范行车秩序、守护出行安全的重要公共设施,但是有人为了一己私利,故意破坏交通设施,...
女子称车祸住院遭男医生侵犯,警... 极目新闻记者 马浩然近日,河北的王女士向极目新闻反映,今年3月,她开车经过辽宁葫芦岛时,在高速遭遇汽...
美军的“眼中钉”,伊朗岸舰导弹... 澎湃新闻特约撰稿 邰丰顺据中国新闻社报道,当地时间5月25日,美军中央司令部称,美军在伊朗南部实施了...
张雪峰因病去世,其江苏省人大代... 5月27日,江苏省人民代表大会常务委员会发布公告:江苏省人民代表大会常务委员会公告由无锡市选出的陈大...
电热水器一加热就跳闸 可能跟安装电热水器有关,如果是家里安装电热水器,最好要找专业人士,安装不仔细或者是安装不到位,比如在...
家里电热水器通电就跳闸 这种情况可能是电热水器漏电,解决方法建议检测电热水器加热管是否漏电、温控器有无问题,发现问题及时处理...