字符串的定义和处理

\n 回车  \r 换行   \t 回车

1.定义:

双引号定义的:a、可以在双引号里面执行变量,例如:

$num = 1000;

$str = "it is my $num life ";

echo $str;

此时就会输出 it is my 1000 life 表明双引号中可以识别到变量,但是如果想要正常执行上述方法,在变量前后要加上空格 或者将变量写成 ${num}或者按照php中的规则使用 "." 将前后进行连接。

b、可以使用转义字符

$str = "this is a \"string\"  test";

单引号定义的:a、不能在单引号的字符串中执行变量

b、只能使用部分转义字符,单引号前可以使用转义字符,本身的“\”可以转义

反引号定义的:$str = `aaaaaaa`;//不出错,但也不会输出

在反引号中使用的是服务器的命令,如果服务器是linux,就可以使linux命令,如果是windows,可以是windows的命令,例如 $str = "ipconifg /all";echo $str;

定界符定义的:"<<<" ,$str=<<<here

aaaaaaaaaaaaaaaaaaaaaaaaccccc

here;

“<<<”后面的字符串a可以任意定义,但是想要展示的内容必须要换行,且可以随意换行,最后必须在最后加上之前定义的字符串a

在定界符中可以执行变量,也可以执行转义字符,和双引号的区别就在于可以如意包含字符串,使用任意多的字符串

2、字符串的处理函数:

输出函数:echo : echo "aaaa";

print : print "aaaa"; 有返回值 1、0

die :die("11111111111111");输出其中的程序并退出程序

printf :printf("WWWWWWWWWWWWWWWW");

$num = 100.01; %s 字符串形式 %d整型

printf("%s",$num);

printf("%s --- %d",$num.$num);

printf("%.2f",$num); 输出有2位小数的浮点数

sprintf:并不直接输出 可以将内容赋值给某个变量

$str= sprintf(""%s --- %d",$num.$num");

var_dump:输出变量的类型

print_r():只用于输出数组

ltrim():去掉字符串左空格

rtrim():去掉字符串有空格

trim():去掉字符串两边的空格

strlen();求字符串长度

strrev(),将字符串前后颠倒

strtolower(),将字符串转换成小写

stroupper(),将字符串转换成大写

ucfirst():将字符串中第一个字符改成大写

ucwords():将字符串中每个字第一个字母改成大写

explode(分隔符,需要分割的字符串,返回的数组的长度):分割字符串,使用一个字符串分割另一个字符串,该函数返回的是数组

implode(要联合需要使用的字符串,放有小字符串的数组):用一组较小的字符串创建一个大的字符串

此方法的别名是join()

var arr =array("this","is","a","demo");

$str= implode(",",arr); 输出的结果为 this,is,a,demo

substr(string str ,int start,int length):取部分字符串:其中length可选,如果不存在length,则从start取到结尾

strstr(string str母字符串,string str标识字符串)别名strchr(string str,string str):返回字符串中某字符串开始出至结束的字符串

strrchr(string $str, char):返回最后出现的字符到结束的字符串

strpos(string 被查找的字符串,string需要查找的字符串,int pos从某个位置开始查找第一次出现的位置):寻找字符串中某字符最先出现的位置

strrpos(string 被查找的字符串,string需要查找的字符串):返回最后出现的字符在字符串中出现的位置

$url = "http://www.baidu.com/aa/aa/demo.php?a=1";

$pos1 = strrpos($url,"/")+1;

$str = substr($url,$pos1);

$pos2 = strpos($str,"?");

$str = substr($str,0,$pos2);

echo $str;  输出demo.php

str_pad(要处理的字符串,给定处理后字符串的长度,给出想要填补的字符串,指明填补的方向):字符串的填补函数,

第四个参数有三个常量:STR_PAD_LEFT,左侧填补

STR_PAD_RIGHT:右侧填补

STR_PAD_BOTH: 两侧填补

$str = "www.baidu.com";

$str2 = str_pad($str,30,"#",STR_PAD_LEFT);

字符串的比较:

按字节进行字符串比较strcmp() strcasecmp()不区分大小写

按自然排序法进行比较strnatcmp()

字符串的模糊比较 soundex()按照发音比较  similar_text()返回字符串相匹配的个数

str_replace(string str1,string str2,string str3)

将str3中的str1替换成str2

str_replace(array arr,string str2,string str3)

str_replace(array arr1,array arr2,string str3)

strtr(string str,string from,string to) 字符串的翻译函数,此函数是按照一个字母一个字母相对应的替换

strtr(string str,array arr)

$str = "http://www.baidu.com";

$arr = array("http"->"ftp","baidu"->"google");

$newstr = strtr($str,$arr);

stripslashes()去除引号的转义字符

addslashes()

htmlentities()处理html的标签

htmlspecialchars()

strip_tags()强制删除html标签

strip_tags(str,tags):strip_tags("<b>dd</b>","<b><i>")此代码表示对字符串中的标签除了<b><i>,其他都不展示

对url处理

parse_str()

parse_url()

url编码处理函数:

rawurlencode();

urlencode()

urldecode()

构造查询字符串等:

http_build_query();

字符串的定义和处理,布布扣,bubuko.com

时间: 2024-10-11 06:30:16

字符串的定义和处理的相关文章

字符串的定义和处理(续)

额...这几天晚上都有事所以都没怎么学习,真是罪过啊,罪过.. 这个是接着上一篇的结尾处的内容继续的: 对url处理 parse_str(string str):将字符串解析到变量中,例如 parse_str("a=2&b=4&c=5"); echo $a."-----"; echo $b; 输出结果为:2-----4 parse_str(string str,array arr):将解析到的字符串存储到arr数组中,例如 parse_str(&qu

图说:为什么Java中的字符串被定义为不可变的

8张图,看懂Java字符串的不变性 字符串,想必大家最熟悉不过了,通常我们在代码中有几种方式可以创建字符串,比如:String s = "Hollis";这时,其实会在堆内存中创建一个字符串对象,其中保存了一个字符数组,该数组中保存了字符串的内容. 上面的箭头可以理解为"存储他的引用". 当我们在代码中连续创建两个相同的字符串的时候,其实会指向同一个对象.因为当一个字符串被被创建的时候,首先会去这个字符串池中查找,如果找到,直接返回对该字符串的引用. 但是,如果在程

字符串一旦定义,就表示开辟好了指定的空间,其内容就不可改变

public class StringChange{ public static void main(String[] args) { String str = "Hello"; str += "World"; System.out.println(str); } } 结果为HelloWorld,运行结果显示str的内容改变了!?事实并非如此! 由上图可以发现,str的内容未变,改变的只是str的引用,并且会产生字符串垃圾. 因此为避免大量垃圾,不应不断修改字符串内

php字符串的定义方式及区别

单引号.双引号.heredoc.newdoc 1 //1.单引号不能解析变量,转义字符.只能解析单引号和反斜杠本身,可以用.来连接.单引号效率更高 2 $a=123; 3 $str1 = 'abcdef$ag';//abcdef$ag 4 //2.双引号可以解析变量,变量可以使用特殊字符和{}包含.双引号可以解析所有转义字符,也可以用.来连接 5 $str2 = "abcdef{$a}g";//abcdef123g $str3 = "abcdef'{$a}'g";/

C语言两种定义字符串的方式

/** * 1.字符串的定义方式 */ //可变字符串(放到栈里边)栈里边放局部变量有几份变量就有几个内存空间 char name[4] = "zkz"; char name3[4] = "zkz"; printf("name[4] = %p\n",name);//name[4] = 0x7fff5fbff79c printf("name3[4] = %p\n",name3);//name3[4] = 0x7fff5fbff7

高级字符串函数

查找一个字符串前缀 size_t strspn(char const *str,char const *group) size_t strcspn(char const *str,char const *group) strspn 返回str起始部分匹配group中任意字符的字符数 strcspn他对str字符串起始部分中部与group中任何字符匹配的字符进行技术 在字符串中查找指定字符串最后一次出现的位置 strrstr #include<stdio.h> #include<asser

ORACLE 字符串超长问题解决方案

前两天我在工作中遇到这样一个问题,我们有一个程序是用来增量抽取EBS 中的表数据的,有的是全量抽取,即先删除原表中的数据,然后重新抽取数据,示例代码如下: 1 truncate table ods_emp drop storage; 2 insert into ods_emp select * from emp; 另外一种方式是增量抽取,用的是merge语句,这里就不写了;) 接触过EBS库存模块的同志们知道,INV中的物料表是MTL_SYSTEM_ITEM_B,这个表的字段那叫一个多!我之前搞

1347 旋转字符串

1347 旋转字符串 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 S[0...n-1]是一个长度为n的字符串,定义旋转函数Left(S)=S[1-n-1]+S[0].比如S="abcd",Left(S)="bcda".一个串是对串当且仅当这个串长度为偶数,前半段和后半段一样.比如"abcabc"是对串,"aabbcc"则不是. 现在问题是给定一个字符串,判断他是否可以由一个对串旋转任意次得

Python新手学习基础之数据类型——字符串类型

Python中字符串被定义为引号之间的字符集合,可以用 ' (一对单引号)或 " (一对双引号)括起来,字符串也可以被 """ (一对三个双引号)或者 ''' (一对三个单引号)括起来.使用索引运算符([ ])和切片运算符([ : ])可以得到子字符串.在Python中,字符串第一个字符的索引是0,而最后一个字符的索引是-1.索引和切片会在后面的文章中进行讲解. 让我们先来创建下字符串吧!例如: str1 = 'maya'   srt2 = 'coder' 字符串也