ホームページ >php教程 >php手册 >数字、浮点、布尔型、字符串和数组

数字、浮点、布尔型、字符串和数组

WBOY
WBOYオリジナル
2016-05-25 16:46:031527ブラウズ

数字、浮点、布尔型、字符串和数组、浮点、布尔型是值类型,英文:int、float、bool,这样你知道他们怎么用了.

比如语句:$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";
echo strtolower($str); //变小写,结果:"12345abc"。
echo "<br>";
echo strtoupper($str); //变小写,结果:"12345abc"。
echo "<br>";
?>

实例4:字符串长度、截取子字符串(中英文),代码如下:

<?php
$str = "字符串2";
echo mb_strlen($str, "utf-8"); //返回字符串长度的函数,第二个参数是编码,由于页面用utf-8编码,所以为这样。如果省去,返回内存占用的字节数(ascii),即10。结果4
echo "<br>";
echo mb_substr($str, 1, 2, "utf-8"); //返回字符截取,1为从"符"地址开始截取,2为截取2个"utf-8"编码的字符,结果:"符串"。
echo "<br>";
/**  
 * 知识点:现在开始接触函数了,每个函数都有()作为堆栈调用,()里面放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") . "<br>"; //该页编码用utf-8,你却说传入的字符串3是gb2312,就算函数实现了也无法正确的。
?>

实例5:子字符串查找、替换,代码如下:

<?php
$str = "字符串4";
echo mb_strpos($str, &#39;串4&#39;, 0, "utf-8"); //查找从0开始找到的第一个子字符串位置,结果:2。如果查找不到,返回空(="");如果最后两个参数不要,返回6。
echo "<br>";
echo mb_strstr($str, &#39;串&#39;, 0, "utf-8"); //截取从0开始找到的第一个子字符串至结尾,结果:"串4"。如果查找不到,返回空(="");如果最后两个参数不要,返回相同=strstr($str,&#39;串&#39;)。
echo "<br>";
echo str_replace("4", "不是4", $str); //字符串替换,结果: "字符串不是4"。
echo "<br>";
?>

实例6:子字符串去空、html转义,代码如下:

<?php
$str = " 字符串5 ";
echo $str = trim($str); //去除两边空格,结果:"字符串5"。
echo "<br>";
echo "color="red""; //手工转义里面的&#39;、"、,使之存储到内存,结果"color="red""
echo "<br>";
$str = "<br>123";
echo htmlentities($str); //字符串转义<>&&#39;"避免和html标识冲突,使之能在html浏览器端显示出来,结果:"<br>123"。
echo "<br>";
?>


教程链接:

随意转载~但请保留教程地址★

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。