[PHP]第二课知识点总结:八大数据类型:布尔型,整型,浮点型,字符串型,数组,对象,资源,NULL的使用

首先,先讲述:布尔型。

也许,你第一次听到这个名字有点陌生,但是,如果你了解过易语言的,理解起来就很轻松了。对于布尔型可以理解为易语言中的“逻辑型”,它返回的数据只有ture或false,大小写不区分。对于布尔型,可以到项目中使用gettype()函数(引用此函数记得echo调试输出)取出数据类型,详见代码:
https://image.lli5.com/img/48
https://image.lli5.com/img/49
由此可见,此(布尔型)数据类型的英文是:boolean。下面是代码:

<?php //一个标准的php开发标签.值得一提的就是,注释文字在前端不会显示!
$a=true;//申明变量
echo gettype ($a);
//注意,php的语法,每行末尾需要加“;”,不要漏加,否则会报错!!!
?>

第二个:整型。

这个一般人都懂,相当于易语言中的“整数型”,如何写入一个整型变量?数字不要加双引号即可,和易语言一样的语法格式,这里就不提供代码演示了。其中值得注意的是,整型分为四大类,包括:十进制,二进制,八进制,十六进制。具体区别详见下文:

<?php
$a=101;//十进制
$b=0b101;//二进制,前缀是0b
$c=0101;//八进制,前缀是0
$d=0x101;//十六进制,前缀是0x
echo $a,"<br>",$b,"<br>",$c,"<br>",$d,"<br>";
?>

返回值分别是:101,5,65,257。详情自己去调试。
我们可以对不同的进制进行相互转换,php里有相应的函数,如下:
decbin():十进制转二进制
decoct():十进制转八进制
dechex() :十进制转十六进制
bindec() :二进制转十进制
binoct() :二进制转八进制
这里只罗列了一点点,还有很多,大家可以找规律进行函数的书写。如下:
bin():二进制
oct():八进制
dec():十进制
hex():十六进制
他们之间相互组合,即可实现所有进制之间的转换。我们这时候先暂时不对这个进制进行详细的介绍,你只需要知道有这个东西存在即可。

第三个:浮点型。

很容易理解,和易语言中的“双精度小数型”一样的,只是换了个名字,换了个说法,和第二种“整型”一样的调用方法,这里不再做介绍,具体自测。举例:$a=3.1415926;

第四个,最关键的和最重要的数据类型来了:字符串。

它是php中最重要的一个数据类型,其中我们给字符串给出了三种定义,单引号,双引号,定界符。这些在第一课知识点总结里有介绍,大家可以去博客里康康,这里不再重复。
这里给大家介绍几种函数,方便大家对字符串的数据进行调用处理。

1.strlen (string) 此函数返回的是字节数量,调试demo:

<?php
$str = 'abcdef';//演示数据
echo strlen($str); // 返回是6,6个字节
$str = ' ab cd ';//请注意,空格也算一个字节,加起来有7个
echo strlen($str); //7 
?>

此函数对中文而言,有些麻烦,网页在utf8编码的情况下,先看看你的php是什么编码,一般编码都是utf8(一般情况下)一个中文字,相当于三个字符;在gb2312编码情况下,一个中文字,相当于两个字符。调试demo:

<?php
$str = '你好';
echo strlen($str); 
//utf-8编码下是: 6,gb2312下是4
?>

2.strtoupper(string)此函数可以将某一字符串中的所有的小写英文转为大写,输出转换后的文本。调试demo:

<?php
$str = "Mary Had A Little Lamb and She LOVED It So";
$str = strtoupper($str);
echo $str; // 输出应该是:MARY HAD A LITTLE LAMB AND SHE LOVED IT SO
?> 

另外,与之对应的还有一个strtolower(string)函数,它可以将某一字符串中的所有大写英文转为小写,输出转换后的文本,可以和strtoupper(string)搭配使用。这里就不提供demo了。

3.ucfirst(string)此函数可以将某一字符串中的第一个字符转换成大写,其他字符不变,输出转换后的文本,此函数对于来说比较简单,这里就不提供demo了。

4.ucwords(string)此函数可以将某一字符串中的所有单词的首字母转换成大写,其他字符不变,输出转换后的文本,此函数对于来说比较简单,这里就不提供demo了。

5.strpos(string,find,start)函数查找字符串在另一字符串中第一次出现的位置,和易语言中的“文本_寻找文本()”有些类似。

其中,这个函数有三个参数,第一个参数:string,必需,规定要搜索的字符串;第二个参数:find,必需。规定要查找的字符串;第三个参数:start,可选,规定在何处开始搜索。返回find在string中出现位置。从0开始,0表示开始位置。未找到返回false(因为返回值是整型,所以它是返回不到false的,返回空文本,但是我们通过var_dump()命令,发现返回的是false只是被整型给限制了通过var_dump()指令返回的是“bool(false)”),省略start则从头查起,否则从start指定的数值算起。
值得注意的就是,php的语法规定,字符串寻找时,从0开始,而不是从1开始,这里需切记。如果携带了start参数,只是从start处开始寻找,但是返回的数据并不是从start这里开始计算,而是从头计算的。
https://image.lli5.com/img/50
https://image.lli5.com/img/51
调试demo:

<?php
    $mystring = 'abc';
    $findme   = 'd';
    //省略start则从头查起,否则从start指定的数值算起。
    $pos = strpos($mystring, $findme); //
    echo $pos; //0
    echo var_dump( $pos );
    //省略start则从头查起,否则从start指定的数值算起。如下是从2
    echo "<br/>".strpos("abcdefabce","a",2);  //结果为6
?> 

6.substr(string,int start,int length)此函数用于截取字符串,在易语言中和“文本_取左边()或文本_取右边()”相类似。内含三个参数,其中前两个必填,最有一个可选。第一个string函数,就是在哪个字符串中截取;strart为起始位置,从0开始,如果数字是正数就从左往右取,如果是负数,就从右往左取;length就是截取长度,可选参数。

请注意:这个函数只能用来截取英文,无法截取中文,会截取错误和报错,切记!如果需要截取中文的话,需要用到以下参数:截取汉字字符个数:mb_substr() 截取汉字字节个数:mb_strcut()
这两个函数有什么区别呢?一个就是使用字节个数进行截取(再次复习:utf8一个汉字三个字符,gb2312一个汉字两个字符),我们就可以使用mb_strcut()函数。那么我们现在来学习一下这个函数。这个函数有三个参数,第一个:在哪个字符串进行截取,第二个从哪个位置开始截取(最开始的是0,不是1,切记),第三个参数是网页编码格式。看下demo:

<?php
echo mb_substr('你好欢迎来到轩的博客',1,3,'utf-8');
?>

我建议还是用mb_strcut()函数好些,因为我喜欢,mb_substr() 函数也能用,只是使用起来不方便,因为截取的是字符个数,所以这里我不提供demo了。

本网站上的所有内容均为原创,禁止任何无底线搬运本站教程的行为。请尊重原创,尊重知识产权,对搬运说“不”!
轩哥日记 » [PHP]第二课知识点总结:八大数据类型:布尔型,整型,浮点型,字符串型,数组,对象,资源,NULL的使用

发表评论

本站网站名称:轩哥日记 - 旗下编程网站 隶属于:轩哥日记 - chboy.top

关于我们 轩哥日记