威尼斯www.9778.com-威尼斯正版官方网站

php学习 字符串课件

日期:2020-01-01编辑作者:编程人生

语法
字符串string可以有三种方法定义
‘ '(单引号)“”(双引号) <<<(定界符)   

字符串
注意单引号和双引号的区别
注意转义字符的使用\,",$
注意使用8进制或16进制字符表示 xf6
echo "Hxf6me";//需要察看是否支持此类文字编码
---------------------输出结果----------------------------------------

转义序列可以用     \解释为

H鰉e

1.使用printf()和sprintf()创建格式化的输出

printf()直接输出到输出缓冲区
sprintf()的输出作为字符串返回
如printf("输出内容 %.2fn",$PI());
所有的转换规范都以%开头
数据类型有d-整数,s-字符串,f-浮点数,b-二进制
.2是一个可选的宽度指标,小数点右边输出使用0填充
printf("%.2f",3.14159);
printf("%10.2f",3.14159);
printf("%.10f",3.14159);
printf("%.9s",abcdefghijklmn);
printf("%5.2f,%f,%7.3fm",3.14159,3.14159,3.14159);
printf("%b %d %f %s n",123,123,123,"test");
---------------------输出结果----------------------------------------

双引号的最大特点是 变量名会被变量值代替

3.14 3.143.1415900000abcdefghi 3.14,3.141590, 3.142m1111011 123 123.000000 test 

2.字符串填充

string str_pad(string input原始字串, int length添加后的总长度[, string padding要填充的字符 [, int pad_type]填充类型])
填充类型有添加在左边STR_PAD_LEFT,默认添在右边,填充在两端STR_PAD_BOTH
$index = array("one"=>1,"two"=>155,"three"=>1679);
echo "
";
echo str_pad("这是标题",50," ",STR_PAD_BOTH)."n";
foreach($index as $inkey=>$inval)
        echo str_pad($inkey,30,".").str_pad($inval,20,".",STR_PAD_LEFT)."n";
echo "
";
---------------------输出结果----------------------------------------

                     这是标题                     
one..............................................1
two............................................155
three.........................................1679


string strtolower(string subject)//转换为小写
string strtoupper(string subject)//转换为大写
string ucfirst(string subject)//首字母大写
string ucwords(string subject)//每个单词首字母大写
string ltrim(string subject)//去左空白
string rtrim(string subject)//去右空白
string trim(string subject)去左右空白,空白包括null,制表符,换行符,回车符和空格
string n12br(string source)//将n表示的换行符转换为<BR />标记

3.字符串比较

integer strcmp(sting str1,string str2) //str1大于str2返回-1 str1小于str2返回1 str1和str2相等返回0 
integer strmcmp(sting str1,string str2,integer length) //第三个参数限制length个字符的比较
print strcmp("aardvark","aardwolf");
print strncmp("aardvark","aardwolf",4);
---------------------输出结果----------------------------------------

定界符可以原样输出 html格式

-10

strcasecmp()和strncasecmp()是不区分大小写的比较函数

4.查找和抽取子字符串

string substr(sting source,integer start[,integer length])//从start开始取length个字符
start和length可以使用负值
$var = "abcdefgh";
print substr($var,2);//从0开始计数
print substr($var,2,3);
print substr($var,-1);//从字符串的末尾开始
print substr($var,-5,2);
print substr($var,-5,-2);
---------------------输出结果----------------------------------------
cdefgh
cde
h
de

  打印字符串有两种方法
echo 它属于语言结构,不是真正的函数,它和print的区别在于可以接受多个参数
print  语法bool(布尔行)print(string agr)次函数输出字符串 如果成功返回1  失败返回0  列如传输中如果客户的浏览器突然挂掉 则会造成失败的情景

def

integer strpos(string haystack,string needle[,integer offset])//查找子字符串的位置,返回第一次出现.
integer strrpos(string haystack,string needle)//只搜索单个字符(多个字符只取第一个),返回最后一次出现的索引.
还有常见的从 字符串中抽取找到的部分 的函数
string strstr(string haystack,string needle)//不区分大小写
string stristr(string haystack,string needle)//区分大小写
string strrchr(string haystack,sting needle)
*********** array explode(string separator,string subject[,integer limit])//返回一个字符串数组
array implode(string glue,array pieces)//返回一个字符串
///////////////////////////代码段////////////////////////////////////////
$guest = "this is a string";
$guestArray = explode(" ",$guest);
var_dump($guestArray);
sort($guestArray);
echo implode(",",$guestArray);
////////////////////////////////////////////////////////////////////////
---------------------输出结果----------------------------------------

  字符串处理函数
ltrim  语法格式:string ltrim(string str); 删除字符串的前导空格
rtrim  语法格式:string rtrim(string str); 删除字符串的后缀空格
trim  语法格式:string rtim(string str); 删除祖父穿的两端空格
strrev  语法格式:string strrev(string str); 颠倒字符串 将字符串前后颠倒
strtolower 语法格式:string strtolower (string str); 将字符串全部变成小写
strtoupper 语法格式:string strtoupper (string str); 将字符串全部变成大写
ucfirst 语法格式:string ucfirst(string str); 将字符串的首字母改成大写
ucworde 语法格式:string ucworde(string str); 将字符串的每个字的首字母都改成大写

array(4) { [0]=> string(4) "this" [1]=> string(2) "is" [2]=> string(1) "a" [3]=> string(6) "string" } a,is,string,this

5.替换字符和子字符串

string substr_replace(string source,string replace,int start[,int length]) 

  格式化字符串以便显示
sprintf此函数将字符串格式化
sprintf()语法格式string sprintf(string format,mixed[args]...) 
范例:
  $a=sprintf ("%'*6s","kkk")
  echo $a;
输出结果:***kkk    
b     整数转成二进位。 
c     整数转成对应的 ASCII 字符。 
d     整数转成十进位。 
f     单倍精确度数字转成浮点数。 
o     整数转成八进位。 
s     转成字符串。 
x     整数转成小写十六进位。 
X     整数转成大写十六进位。
printf 输出格式化字符串 返回值整数
语法格式:int printf(string format, mixed [args]...); 
范例
  printf("%d--%s--%x",72,72,72);
输出结果:72--72--48

  分割与拼状字符串
explode语法格式:array explode ( string separator, string string [, int limit] )
implode语法格式:string implode(shring glue,array pieces)把数组功能连接成字符串

  字符串比较
strcmp语法格式:int strcmp(string 1,string 2) 返回值为整数 子字符串
strcmp次字符串用来比较大小 负数表示1小于2  正数表示1大于2  0表示相等
strlen语法格式:int strlen(string str);取得字符串长度 返回值整数 
substr语法格式:string substr(string string, int start, int [length]); 
取得部分字符串 string为字符串 开始位到停止取几个字符 若省略停止则去到尾 若开始设为负数 表示从后象前取
strstr string strstr(string haystack, string needle); 返回字符串中某字符串开处至结束字符串 就是说以某处为界点取后段段字符串
strrchr 语法格式:string strrchr(string haystack, string needle); 取得字符串最后出现的位置 从后向前截取字符串没找到返回false
strpos 语法格式:int strpos(string haystack, string needle, int [offset]); 寻找字符串最先出现的位置默认从0开始 如果找不到返回false
strrpos 语法格式:int strrpos(string haystack, char needle); 寻找字符串最后出现的位置 找不到返回false 返回值整数

  字符串填补

str_pad语法格式  可以用于一些敏感信息的保护
str_pad($input, 10);                      // produces "Alien     "
str_pad($input, 10, "-=", STR_PAD_LEFT);  // produces "-=-=-Alien"
str_pad($input, 10, "_", STR_PAD_BOTH);   // produces "__Alien___"
str_pad($input, 6 , "___");               //  produces "Alien_"
STR_PAD_LEFT    字符串左添补
STR_PAD_RIGHT 字符串右添补
STR_PAD_BOTH  字符串两端添补

  字符串的替换
str_replace()  函数替换
有三种方法
str_replace("l","@","hello");  //替换什么  用什么替换   替换谁
$arr2=array("%color%","%title%","%body%");
$arr3=array("red","hello","world");
echo str_replace($arr2,$arr3,"<font color=%color% title=%title%>%body%</font>");
摸版的方法  

  字符串翻译
strtr()一个重要的替换函数 也叫字符串翻译
strtr也有两种调用方式
strtr(string $str, string $from, string $to)
  $arr5=array("hello"=>"hi","hi"=>"hello");
      echo strtr("hello is hi",$arr5);
就是将什么翻译成什么
strtr(string $str, array $replace_pairs)

    html处理
HTML实体的处理
htmlentities(); (指定转换模式和字符集编码)
ENT_COMPAT(默认):指定转换双引号但是保留单引号
ENT_QUOTES:表示同时转换双引号和单引号
ENT_NOQUOTES:表示两个都不转换
htmlspecialchars(); (把<>等特殊符号转换成实体<>)
语法格式
$str="<p title='hhh'>中国</p>";
echo htmlentities($str);  //转换编码
echo htmlentities($str,ENT_QUOTES,"EUC-JP");//单引号双引号都转换  后面是字的编码
    引号的处理
stripslashes(); (是addslashes的反函数,显示转移后的字符)
addslashes(); (把' ”  NULL() 4个字符前添加显示)
HTMl标签的清理
strip_tags();(清理字符串中的HTML超文本字符)
  url处理
除了对HTML文字的处理, 在WEB开发时还要对URL地址进行处理。处理URL主要包括:
对URL字符串的解析
parse_str();(解析请求字符串转变成数组)
parse_url();(解析完整的URL转变成数组)
URL编码处理
rawurlencode(); (替换所有非字母数字的字符,变为%后面跟两位16进制)  
urlencode(); (替换所有非字母数字的字符,变为%后面跟两位16进制,空格变为+号)
rawurldecode(); (对已%编码的URL进行解析还原)
urldecode(); (对已%##编码的URL进行解析还原)
构造查询字符串等。
http_build_query();(生成 url-encoded 之后的请求字符串 )
图片 1php字符串.rar

本文由威尼斯www.9778.com发布于编程人生,转载请注明出处:php学习 字符串课件

关键词:

PHP数组操作详解

下标:数组中的识别名称 也就是字符串或整数在数组中的代号 要访问一个变量的内容,可以直接使用其名称。如果...

详细>>

>>>---PHP中的OOP-->面对过程与面对对象基础概念与内容

  对象的主要三个特性 对象的行为:可以对 对象施加那些操作,开灯,关灯就是行为。 对象的形态:当施加那些方...

详细>>

重庆北火车站

同样,在“重庆北站”旁边也建有长途汽车站,由于车站没有处于市中心,交通快速,可以快速地进入高速公路。 内...

详细>>

第二届中国重庆火锅美食文化节

第二届中国重庆火锅美食文化节于2006年10月13日在南滨路举行(第一届于2004年举行),共有30 万人参加了本次火锅节...

详细>>