加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

《PHP编程最快明白》第二讲 数字、浮点、布尔型、字符串和数组

发布时间:2020-05-24 20:56:15 所属栏目:PHP 来源:互联网
导读:编写程序最终就是浏览器看到的html代码的表现形式,所以,就先研究一下这五种类型。

数字、浮点、布尔型是值类型,英文:int、float、bool,这样你知道他们怎么用了。 比如语句:$fa=3.14; 字符串和数组是引用类型,也就是说他们作为地址放在栈里,当重新赋值时,栈里的地址改变方向,原来的指向变没或给回收了,英文:string、array。 比如:$str=”字符串”;$arr=array(“a”=>”数”,”b”=>”组”);// array()是一个数组赋值函数,这样的函数PHP有一千多个,一般常用的不到200个,我觉得。 字符串操作: 实例2:字符串合并、相加
<div class="codetitle"><a style="CURSOR: pointer" data="76118" class="copybut" id="copybut76118" onclick="doCopy('code76118')"> 代码如下:<div class="codebody" id="code76118">
<?php
$str = 1;
echo $str .= ""; //数字转化为字符串再合并,结果:"1"。
echo "
";
echo $str += "1元"; //字符串转化为数字再相加,如"1XXX"转化为数字1,结果: 2。
echo "
";
?>

实例3:字符串改变大小写
<div class="codetitle"><a style="CURSOR: pointer" data="67832" class="copybut" id="copybut67832" onclick="doCopy('code67832')"> 代码如下:<div class="codebody" id="code67832">
<?php
$str="12345ABc";
echo strtolower($str);//变小写,结果:"12345abc"。
echo "
";
echo strtoupper($str);//变小写,结果:"12345ABC"。
echo "
";
?>

实例4:字符串长度、截取子字符串(中英文)
<div class="codetitle"><a style="CURSOR: pointer" data="45805" class="copybut" id="copybut45805" onclick="doCopy('code45805')"> 代码如下:<div class="codebody" id="code45805">
<?php
$str = "字符串2";
echo mb_strlen($str,"UTF-8"); //返回字符串长度的函数,第二个参数是编码,由于页面用UTF-8编码,所以为这样。如果省去,返回内存占用的字节数(ASCII),即10。结果4
echo "
";
echo mb_substr($str,1,2,"UTF-8"); //返回字符截取,1为从”符”地址开始截取,2为截取2个"UTF-8"编码的字符,结果:“符串”。
echo "
";
/*
知识点:现在开始接触函数了,每个函数都有()作为堆栈调用,()里面放0个或多个参数,可以自定义可以有默认值。而关键字比如echo是没有()的。
很多书用GB2312编码,取长度和子串时很麻烦。下面给大家参考一下不用上面的mb中文字符串扩展库实现原理:
/
function my_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;
}
echo my_mb_strlen($str) . ";" . my_mb_strlen($str,"GB2312") . "
"; //该页编码用UTF-8,你却说传入的字符串3是GB2312,就算函数实现了也无法正确的。
?>

实例5:子字符串查找、替换 <div class="codetitle"><a style="CURSOR: pointer" data="85326" class="copybut" id="copybut85326" onclick="doCopy('code85326')"> 代码如下:<div class="codebody" id="code85326">
<?php
$str = "字符串4";
echo mb_strpos($str,'串4',"UTF-8"); //查找从0开始找到的第一个子字符串位置,结果:2。如果查找不到,返回空(="");如果最后两个参数不要,返回6。
echo "
";
echo mb_strstr($str,'串',"UTF-8"); //截取从0开始找到的第一个子字符串至结尾,结果:"串4"。如果查找不到,返回空(="");如果最后两个参数不要,返回相同=strstr($str,'串')。
echo "
";
echo str_replace("4","不是4",$str) ; //字符串替换,结果: "字符串不是4"。
echo "
";
?>

实例6:子字符串去空、html转义
<div class="codetitle"><a style="CURSOR: pointer" data="66764" class="copybut" id="copybut66764" onclick="doCopy('code66764')"> 代码如下:<div class="codebody" id="code66764">
<?php
$str=" 字符串5 ";
echo $str=trim($str);//去除两边空格,结果:"字符串5"。
echo "
";
echo "color="red"";//手工转义里面的'、"、,使之存储到内存,结果"color="red""
echo "
";
$str="
123";
echo htmlentities($str) ; //字符串转义<>&'"避免和html标识冲突,使之能在html浏览器端显示出来,结果:"&ltbr&gt123"。
echo "
";
?>

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读