《PHP编程最快明白》第二讲数字、浮点、布尔型、字符串和数组
2023-06-13 09:14:25 时间
数字、浮点、布尔型是值类型,英文:int、float、bool,这样你知道他们怎么用了。
比如语句:$fa=3.14;
字符串和数组是引用类型,也就是说他们作为地址放在栈里,当重新赋值时,栈里的地址改变方向,原来的指向变没或给回收了,英文:string、array。
比如:$str=”字符串”;$arr=array(“a”=>”数”,”b”=>”组”);//array()是一个数组赋值函数,这样的函数PHP有一千多个,一般常用的不到200个,我觉得。
字符串操作:
实例2:字符串合并、相加
复制代码代码如下:
比如语句:$fa=3.14;
字符串和数组是引用类型,也就是说他们作为地址放在栈里,当重新赋值时,栈里的地址改变方向,原来的指向变没或给回收了,英文:string、array。
比如:$str=”字符串”;$arr=array(“a”=>”数”,”b”=>”组”);//array()是一个数组赋值函数,这样的函数PHP有一千多个,一般常用的不到200个,我觉得。
字符串操作:
实例2:字符串合并、相加
<?php
$str=1;
echo$str.="";//数字转化为字符串再合并,结果:"1"。
echo"<br>";
echo$str+="1元";//字符串转化为数字再相加,如"1XXX"转化为数字1,结果:2。
echo"<br>";
?>
实例3:字符串改变大小写
<?php
$str="12345ABc";
echostrtolower($str);//变小写,结果:"12345abc"。
echo"<br>";
echostrtoupper($str);//变小写,结果:"12345ABC"。
echo"<br>";
?>
实例4:字符串长度、截取子字符串(中英文)
<?php
$str="字符串2";
echomb_strlen($str,"UTF-8");//返回字符串长度的函数,第二个参数是编码,由于页面用UTF-8编码,所以为这样。如果省去,返回内存占用的字节数(ASCII),即10。结果4
echo"<br>";
echomb_substr($str,1,2,"UTF-8");//返回字符截取,1为从”符”地址开始截取,2为截取2个"UTF-8"编码的字符,结果:“符串”。
echo"<br>";
/**
*知识点:现在开始接触函数了,每个函数都有()作为堆栈调用,()里面放0个或多个参数,可以自定义可以有默认值。而关键字比如echo是没有()的。
*很多书用GB2312编码,取长度和子串时很麻烦。下面给大家参考一下不用上面的mb中文字符串扩展库实现原理:
*/
functionmy_mb_strlen($str,$code="UTF-8")//定义一个新函数,$str是必须传入的参数。
{$num=0;
if($code=="UTF-8")
{
$str=iconv("UTF-8","GB2312",$str);//转化为GB2312编码,ord函数返回对应的ASCII值判断每个字节该中文字符是否结束。
for($i=0;$i<strlen($str);$i++)//在此strlen($str)返回内存占用的字节数相当于mb_strlen($str)
{
if(ord($str[$i])>0xa0)$i++;//$str[$i]对应内存的i字节。如果直接用UTF-8判断会复杂些,因为编码的多样性UTF-8是网页常用编码,UTF-16(Unicode)是windows编码。
$num++;
}
}
else
{
$num="编码未实现";
}//有兴趣的自己查资料吧
return$num;
}
echomy_mb_strlen($str).";".my_mb_strlen($str,"GB2312")."<br>";//该页编码用UTF-8,你却说传入的字符串3是GB2312,就算函数实现了也无法正确的。
?>
实例5:子字符串查找、替换
<?php
$str="字符串4";
echomb_strpos($str,"串4",0,"UTF-8");//查找从0开始找到的第一个子字符串位置,结果:2。如果查找不到,返回空(="");如果最后两个参数不要,返回6。
echo"<br>";
echomb_strstr($str,"串",0,"UTF-8");//截取从0开始找到的第一个子字符串至结尾,结果:"串4"。如果查找不到,返回空(="");如果最后两个参数不要,返回相同=strstr($str,"串")。
echo"<br>";
echostr_replace("4","不是4",$str);//字符串替换,结果:"字符串不是4"。
echo"<br>";
?>
实例6:子字符串去空、html转义
<?php
$str="字符串5";
echo$str=trim($str);//去除两边空格,结果:"字符串5"。
echo"<br>";
echo"color=\"red\"";//\手工转义里面的"、"、\,使之存储到内存,结果"color="red""
echo"<br>";
$str="<br>123";
echohtmlentities($str);//字符串转义<>&""避免和html标识冲突,使之能在html浏览器端显示出来,结果:"<br>123"。
echo"<br>";
?>
相关文章
- 【说站】php中TCP和UDP的区别
- PHP错误类型
- 开发环境配置Linux实现PHP开发环境(linux配置php)
- 和 php 如何配合使用Redis类库搭配PHP编程:高效开发与灵活操作(redis类库)
- PHP扩展Redis:建立强大的缓存架构(php扩展redis)
- PHP搭建Redis环境指南(php配置redis)
- 搭建 PHP 环境,在 Linux 系统里更轻松!(php环境linux)
- PHP原生编程实现MySQL数据库连接(php原生连接mysql)
- 如何在Linux系统下执行PHP文件?(linux下执行php)
- 用PHP操作Oracle:实现强大的数据库能力(php支持oracle)
- 快速学会:PHP连接SQLServer数据库(php连接sqlserver数据库)
- 优雅式PHP配置MySQL数据库(php 配置 mysql)
- 使用PHP连接MSSQL数据库的查询语句(php mssql 语句)
- PHP与MSSQL的融合——开启新的编程前程(php mssql 空白)
- 馆PHP编程与MySQL建立图书馆管理系统(php mysql 图书)
- Linux下搭建PHP开发环境的一步步操作(linux配置php环境)
- 用PHP实现Redis的键值存储(redis键值php)
- PHP应用Redis缓存带来的变化(redis缓存在php)
- PHP安全技术之实现php基本安全
- 《PHP编程最快明白》第三讲:php数组
- PHP和Mysqlweb应用开发核心技术第1部分Php基础-1开始了解php
- PHP和Mysqlweb应用开发核心技术-第1部分Php基础-2php语言介绍
- PHP数组操作汇总php数组的使用技巧
- 浅析PHP的ASCII码转换类
- 浅析PHP程序设计中的MVC编程思想