设为首页 收藏本站
查看: 744|回复: 0

[经验分享] PHP实践之路(三)PHP初探数据类型

[复制链接]

尚未签到

发表于 2017-3-24 11:21:24 | 显示全部楼层 |阅读模式


PHP实践之路(目录索引)






PHP中的数据类型


1、四种标量类型

  boolean(布尔型):取值为true和false两者之一,并且不区分大小写
  注意:a、强制转换为布尔型型时可以采用(bool)或者(boolean)
  b、当转换为布尔型时,以下值被认为是false。除以下情况其他都为true
  1)boolean型false本身
  2)整形0
  3)浮点型0.0
  4)空字符串或者字符串“0”
  5)不包含任何元素的数组
  6)没有成员变量的对象
  7)特殊类型 NULL(包括尚未设定的变量)
  9)从没有任何标记(tags)的XML文档生成的SimpleXML对象
  我们可以用var_dump系统函数来打印变量相关的信息
  接下来是实验时间
  

    $flag=true;
var_dump($flag);        //boolean true
$flag=(bool)"";
var_dump($flag);        //boolean false
$flag=(bool)-1;
var_dump($flag);        //boolean true
$flag=(boolean)array();
var_dump($flag);        //boolean false
$flag=(boolean)"0";
var_dump($flag);        //boolean false
$flag=(boolean)NULL;
var_dump($flag);        //boolean false
  integer(整型):可以用八进制、十进制和十六进制表示。其中八进制前面加0,十六进制前面加0x
  注意:a、强制转换为整型时可以用(int)或者(integer)
  b、integer的字长可以用常量PHP_INT_SIZE,最大值可以采用PHP_INT_MAX
  c、当给定的数大于一个integer时将被解释为float类型
  d、布尔型的false转换为integer时为0,true为1
  e、浮点数float转换为integer时结果为向零取整
  f、php中没有整除的概念,需要整除时可以采用强制转换为integer,也可以采用一些数学函数,如round()、ceil()、floor()等
  接下来是实验时间

$num=10;
var_dump($num);     //int 10
$num=013;
var_dump($num);     //int 11
$num=0x14;
var_dump($num);     //int 20
echo PHP_INT_SIZE;  //4
echo "<br />";       //换行显示
echo PHP_INT_MAX;   //2147483647
$num=2147483648;
var_dump($num);     //float 2147483648
$flag=true;
var_dump((int)$flag);    //int 1
$flag=false;
var_dump((int)$flag);   //int 0
$num=12.45;
var_dump((int)$num);    //12
$num=-12.45;
var_dump((int)$num);    //-12;
var_dump(5/2);          //float 2.5
var_dump(round(5/2));   //float 3
var_dump(ceil(5/2));    //float 3;
var_dump(ceil(-5/2));    //float -2;
var_dump(floor(5/2));   //float 2
  float(浮点数):浮点数只有一个需要注意的地方就是它可以用科学技术法来表示
  如1.2e1=12
  3.56e3=3560
  做个简单的实验

$num=1.2e1;
var_dump($num);         //float 12
$num=3.56e3;
var_dump($num);         //float 3560

string(字符串):由一系列的字符组成,一个字符就是一个字节  a、单引号‘’定义字符串,该字符串原样输出
  b、双引号“”定义字符串,该字符串和单引号的区别在于该串中的一些如变量之类的会被解释为变量
  c、反应好··定义命令,如·cmd·
  d、转移字符反斜杠\,如\n换行
  试验时间到

$str='lily said:"hello"';    //lily said:"hello"
echo $str;
echo "<br />";       //换行显示
$str="lily said:'hello'";    //lily said:'hello'
echo $str;
echo "<br />";       //换行显示
$str='lily said:"hello"$str';    //lily said:"hello"$str
echo $str;
echo "<br />";       //换行显示
$str2="lily said:'hello'$str";    //lily said:'hello'lily said:"hello"$str
echo $str2;
echo "<br />";       //换行显示
$str=`cmd`;
echo $str;          //Microsoft Windows XP [版本 5.1.2600] (C) 版权所有 1985-2001 Microsoft Corp. D:\php_workspace\first_php>
echo "<br />";       //换行显示
$str="hi\nlily";
echo "<br />";       //换行显示
echo $str;          //hi lily
$str='hi\nlily';
echo "<br />";       //换行显示
echo $str;          //hi\nlily


2、两种符合类型
  array(数组):PHP 中的 数组 实际上是一个有序映射,相当于java中的map对象,每个元素都是一个key-value键值对
  a、定义数组用array()。格式为

array(  key =>  value
, ...
)

  其中key可以是整数或者是字符串,value可以是任何类型
  b、使用方括号[ ]的方式来新建或者修改数组值,如果在新建或者修改值时该数组还未定义则此时新建了一个数组。
  c、删除一个数组或数组值时可以用unset函数。如删除某一项时unset($arr[1]),删除整个数组时unset($arr)
  d、数组的遍历,可以使用简单的for循环,也可以使用foreach,在java、C#中叫增强for循环
  我们实验吧

<?php
$arr=array(1,2,3,4,5);
$count=count($arr);
for($i=0;$i<$count;$i++){
echo $arr[$i]."\n";
}
echo "<br />";
$arr[]=6;   //新建一项
foreach($arr as $val){
echo $val."\n";
}
unset($arr[4]);
$arr[3]=8;  //修改一项
echo "<br />";
foreach($arr as $val){
echo $val."\n";
}
unset($arr);    //删除数组
?>

  object(对象):使用new来创建一个对象
  这里简单实验一下,后面将会使用一篇详细介绍对象

<?php
class Person{
private $name;
private $age;
//设置名字
function setName($name){
$this->name=$name;
}
//设置年龄
function setAge($age){
$this->age=$age;
}
//输出信息
function info(){
echo $this->name." age:".$this->age;
}
}
$person=new Person;
$person->setName("cyxl");
$person->setAge(26);
$person->info();    //cyxl age:26
?>


  




版权声明:本文为博主原创文章,未经博主允许不得转载。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-354581-1-1.html 上篇帖子: php5.2转向 PHP 5.3 的 PHP 开发 下篇帖子: 50个非常有用的PHP工具
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表