LAMP兄弟连原创视频教程(PHP笔记二--字符串,数组)

5.1 字符串声明方法
定义方法:
双引号
$num=1000;
$str="2222$num222";
$str="sss${num}sss";
$str="aa".$num;
$str="this is /"str/"";
单引号(1.不能在单引号的字符串内执行变量;2.只能使用部分转义字符(/',//))
$num=100;
$str='this is string ';
反引号``(在反引号里使用的是服务器的命令)
$a=`ipconfig /all`;
定界符(和双引号一样,但可以在里面使用任何多的双引号)
$num=1000;
$str=<<<here
 aaa"a"aa$num/n
        bbbbbbbb
 cccccccccc
      here;

5.2 字符串处理函数应用
输出函数:
1.echo()//echo "aa","bb";
2.print()//print "aaaa";
3.die()//调用完自动退出程序
4.printf()//$num=100.99;printf("%s--%d--%b--%x--%o--%c--%X--           

%.2f",$num,$num,$num,$num,$num,$num,$num,$num);
         //printf("%'_-30s", num)
5.sprintf()//$str=sprintf("%s--%d--%b--%x--%o--%c--%X--            

%.2f",$num,$num,$num,$num,$num,$num,$num,$num);echo $str;
6.print_r()//输出数组数据
7.var_dump()//打印数据类型,也可以打印字符串
格式化字符串函数
去空格:
ltrim(string);返回去掉字符串的左空格
rtrim(string);返回去掉字符串的右空格
trim(string);返回去掉完字符串的两边空格
strrev(string);将字符串前后颠倒
strtolower(string);转为小写
stroupper(string);转为大写
strlen(string);求字符串长度
ucfirst(string);将字符串的第一个字符改为大写
ucwords(string);将字符串的每个单词第一个字母改为大写

explode(string separator,string string [,int limit]);使用一个字符串分割另一个字符串
implode(string glue,array pieces);用一组较小的字符串创建一个大字符串,join()跟这个用法一样
substr(string string ,int start,[,int length]);取部分字符串
strstr(string,string);返回字符中某字符串开始的字符串到结束的字符串
strpos(string,char,[,int offset]);返回字符串中某字符最先出现的位置
strrpose();返回字符串是某字符最后出现的位置
str_pad(string str,int length,string add,[STR_PAD_LEFT])字符串的填补函数

字符串比较

按字节进行字符串比较
strcmp();
<?php
 $str1="hello";
 $str2="hello";
 if(strcmp($str1,$str2)==0){
  echo $str1."等于".$str2;
 }
?>
strcasecmp():不区分大小比较
strnatcmp():按自然排序法进行字符串比较
:$arr=array("photo1"," photo2","photo12");

soundex():字符串的模糊比较(发音是否相同)
similar_text():返回匹配的个数

str_replace(string ,string,string):替换字符串
str_replace(array,string,string)
str_replace(array,array,string)
strtr(string,string from,string to ):字符串的翻译函数
stripslashes():去掉引号
addslashes()
htmlentities()z:处理HTML标签符号
htmlspecialchars();
strip_tags():去掉HTML标签
URL字符串的解析处理
parse_str();
parse_url();
URL编码处理函数
rawurlencode();
urlencode();
urldecode();
构造查询字符串等
http_build_query();
<?php
 $str="  abc   ";
 echo strlen($str);
 $newstr=ltrim($str);
 echo strlen(newstr);
?>

6.1 数组的声明
数组是一个可以存储一组或一系列数值的变量
1.可以存储任何类型的数据;
2.长度可以变长
数组的声明
PHP数组分两类
索引数组:数组的索引值是整数,0开始
<?php
 $arr[0]=100;
 $arr[1]=200;
 $arr[2]=300;
 $arr[3]=400;
/*
 $arr[]=100;
 $arr[]=200;
 $arr[1]=300;//覆盖前面的200
 $arr[]=400;
*/
 echo count($arr);
 print_r($arr);
?>
关联数组:数组以字符串做为索引值
<?php
 //关联下标不会影响到数值索引下标
 $person[0]=0;
 $person["name"]="张三";
 $person["age"]=20;
 $person["gender"]="男";
 print_r($person);
?>
<?php
 $arr=array(1,2,"one,3.33",true);
 $arr1=array("name"=>" 张三","age"=>22)
?>
二维数组:array(array(),array(),...)
$arr=array(array(1,2,3,4),array(5,6,7,8),arry("a","b","c"));
$arr1["zhangsan"][1]=10;
$arr1["zhangsan"][3]=20;
$arr1[2][1]=21;
$arr2[2][2]=22;
6.2 数组的常用遍历方式
for(只适用于连续下标的数组),foreach
<?php
 $arr=array(1,2,3,"abc"=>"one");
 foreach($arr as $key=>$value)
 {
  echo "/$arr[".$key."]=".$value."<br>";
 }
?>
 while each
<?php
 $arr=array(1,2,3,"abc"=>"one");
 //只能遍历一次, 游标每次都会自动移动
 while($a=each($arr)){
  echo "下标".$a[o]."---".$a["key"]."<br>";
  echo "值".$a[1]."---".$["value"]."<br>";
 
 }
?>
list
<?php
 $arr=array(1,2,3);
 //如果数组是关联数组,只有变量名与KEY相同才能成功赋值
 list($a,$b,$c)=$arr;
 echo $a."<br>";
 echo $b."<br>";
 echo $c."<br>";
 while(list($key,$value)=each($arr)){
  echo $key."=>".$value."<br>";
 }
?>
6.3 数组相关处理函数
<?php
/* current(数组的名称) 返回当前下标内容 key(数组的名称)返回当前下标名称
 * 两者不会自动移动
 *
 * next(数组的名称),prev();end(),reset();
 *
 * count(),sizeof()
 *
 * array_change_key_case(目标数组,形态常数) CASE_UPPER CASE_LOWER
 *
 * array_chunk(目标数组,索引个数,[boolean])分解成多个数组
 *
 * array_count_values(数组名称) 统计内容出现的次数
 *
 * array_fill(起始索引位置,区段大小,指定字元) 用于初始化数组
 *
 * array_filter(目标数组,使用者定义的函数) 过滤函数
 *
 * array_walk()
 *
 * array_map(回调函数,目标数组)
 *
 * array_flip(目标数组 )
 *
 * array_sum(目标数组)
 *
 * array_unique()
 *
 * array_values() 返回数组中所有的值,忽略KEY,重新用数字索引返回
 * array_keys() 返回数组中的所有KEY
 *
 * in_array(检索的元素,数组 [,是否严格按数据类型进行检索]) 寻找某值是否在数组中,返回布尔型
 * array_search(检索的元素,数组) 返回数组中该元素的KEY
 * array_key_exists(要检查的KEY,数组) 返回布尔值
 *
 * extract(数组) 将数组(只能是关联数组)转换为变量,其中KEY变为变量名
 * compact(变量,变量...) 将变量转换为数组,变量名变成数组的KEY
 *
 * 数组与栈 array_push(数组,元素,元素...), array_pop()
 *
 * 数组与队 array_unshift(数组,元素) array_shift()
 *
 * 忽略键名的数组排序
 * sort()
 * rsort()
 * usort()
 * 保留键名的数组排序
 * asort()
 * arsort()
 * uasort()
 * 通过键名对数组进行排序
 * ksort()
 * krsort()
 * uksort()
 *自然排序法排序
 * natsort()
 * natcasesort()
 *
 * 数组计算函数
 * array_sum()
 * array_merge() 合并数组
 * array_merge_recursive()
 * array_diff()
 * array_diff_assoc()
 * array_intersect()
 * array_intersect_assoc()
 */
 $arr=array("one"="one","two")
 $a=current($arr);
 var_dump($a);

 next($arr);
 echo key($arr)."=>".current($arr);
 echo "<br>";
?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值