php是一种动态脚本语言,比较适合web开发。

php支持8种变量数据类型:

四种标量类型:

  • boolean(布尔型)
  • integer(整型)
  • float(浮点型,也称作 double)
  • string(字符串)

两种复合类型:

  • array(数组)
  • object(对象)

最后是两种特殊类型:

  • resource(资源)
  • NULL(无类型)

变量你可以这样理解,假如php是一个人的话,变量就是各种类型的衣服,设定变量的用途就是在合适的场合穿上合适的衣服

变量的重点就是在于在变字,它不是一个固定的值,我们上班要穿工作服,这个时候变量是boolean,上学要穿校服,它可以是integer,回家要穿睡衣,它可以是string,有种很特殊的变量是NULL,你可以理解为睡觉的时候什么都不穿。

复合型的变量就是包含多种类型的变量组合,你可以理解为套装,上衣,裤子,手套,领带,皮鞋,袜子一应俱全,什么都可以包含。

我们认真的看下这几种变量有什么不同

boolean,代表真假,是否。中国传统的太极,就是黑白二色,可以相互转化,一方为阳,一方为阴,现实中的男女也是,假设我们用1代表男性,0代表女性,买衣服的时候只要判断是不是男款或者女款就很容易买到合适的衣服。布尔值在生活中非常常见,像插座,都是有零线和火线。电脑中都是以二进制来传递数据。你也可以理解为0和1就是限定了数值范围的整形。

integer:整形,说的通俗易懂就是整数,最常见的就是军训时点到,从左到右,1,2,3,4,5......依次报到,不管有多少人,最后一定是整数,这个就是整形,不含小数点的数字。

float:理解了整形,浮点型就比较好理解了,就是带小数的数值,买东西时,经常会看到某款图书打特价,29.98元,19.56元等,这都是浮点型,根据小数点的位数长度,位数越多,精度越高。

string:字符串类型,就是包含文字的变量,我们小的时候有小名,这是你那个时候设定的一个变量,比如叫小明,长大了,有大名,叫李明,上了社会,叫小李,岁数大了叫老李,晚辈看见叫李叔,这都是不同时期的关于你的字符串变量。

array,数组型变量,融合多种变量元素的一个集合,我们办一个身份证,一个标准的身份证是要有这么几部分的,姓名,民族,出身年月,家庭住址,肖像,经办的派出所,身份证号码等,这相当于就是你的一个数组,可以这样写

$you=array('idcard'=>'123456198805260214','name'=>'李明',''民族=>'汉'...);

调用其中的元素时,比如调用名字,$you['name'] 就可以了

object,对象类型,要比数组复杂些,调用的时候,必须先new一个,然后才可以调用其中的方法和属性。

我们要种一盆花,先要把种子载进去,浇水施肥(这就好比对象初始化),等花长大了,可以松土,可以继续浇水,施肥,直到花儿开放,花儿开放是我们的目的,但是必须先要播种,过程中可能还会有施肥,浇花等必须的方法,我们的种子是玫瑰花,红色的,这是对象的属性,相对于数组来说,对象更像是一个动态的过程。

下面是一个对象的简单的赋值调用:

class flower{

  public name;

  public color;

  function __construct($name)

  {

    echo '播种';

  }

  function watering()

  {

    echo '浇水';

  }

}

$flower=new  flower();

$flower->name='玫瑰花';

$flower->color='红色';

$flower->watering();

echo '花的名字:'.$flower->name;

echo '花的颜色:'.$flower->color;

以上6种是常用的变量类型,

  • resource(资源)类型需要有打开的句柄,就和开保险柜需要钥匙和密码一样,后面到了会介绍,用的比较少
  • NULL(无类型),就代表什么都没有,没有声明,没有初始化,就是NULL

php教程一,变量的更多相关文章

  1. Cobalt Strike使用教程一

    Cobalt Strike使用教程一     0x00 简介 Cobalt Strike是一款基于java的渗透测试神器,常被业界人称为CS神器.自3.0以后已经不在使用Metasploit框架而作为 ...

  2. CRL快速开发框架系列教程一(Code First数据表不需再关心)

    本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...

  3. NGUI系列教程一

    NGUI是Unity的一个插件,使用它来制作你的游戏UI必定将事半功倍.为什么这么说呢?首先我们说说GUI与NGUI的区别,GUI是Unity自带的绘制界面工具,它的成像原理是基于表层的,所以执行效率 ...

  4. Quartz教程一:使用quartz

    原文链接 | 译文链接 | 翻译:nkcoder | 校对:方腾飞 本系列教程由quartz-2.2.x官方文档翻译.整理而来,希望给同样对quartz感兴趣的朋友一些参考和帮助,有任何不当或错误之处 ...

  5. redis学习教程一《Redis的安装和配置》

    redis学习教程一<Redis的安装和配置> Redis的优点 以下是Redis的一些优点. 异常快 - Redis非常快,每秒可执行大约110000次的设置(SET)操作,每秒大约可执 ...

  6. andorid jni入门教程一之helloworld

    开发环境:windows2007, eclipse 做anroid越深发现用到底层开发的时候越多,但是我以前也没有搞过,因此现在打算好好学习学习.先从最简单的做起.正所谓万事开头难啊. 搞了近一天终于 ...

  7. AngularJS 基础教程一:

    一:了解AngularJS AngularJS是一款非常优秀的前端高级 JS 框架,由 Misko Hevery 等人创建 2009 年被 Google 收购,用于其多款产品 有一个全职的开发团队继续 ...

  8. tensorflow 从入门到上天教程一

    tensorflow 是一个google开源的深度学习的框架,执行性能良好,值得使用. caffe,caffe2 通过配置就可以拼凑一个深度学习框架,大大简化流程但也依赖大量的开源库,性能也不错.20 ...

  9. OpenGL教程一

    引自:https://blog.csdn.net/u013654125/article/details/73613644 GLEW, GLFW和GLM介绍 现在你有了工程,就让我们开始介绍下工程所用到 ...

随机推荐

  1. [SQL]CASE用户数据统计

    create table tb(id int ,class varchar)--class种类就只有三种,如果不固定就需要存储过程来实现 insert tb ,'a' union all ,'a' u ...

  2. 解决tomcat默认45s启动超时的问题

    进入工作空间目录下的.metadata\.plugins\org.eclipse.wst.server.core子目录,找到servers.xml文件,编辑它,找到start-timeout这一行,把 ...

  3. poj 1007 (nyoj 160) DNA Sorting

    点击打开链接 DNA Sorting Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 75164   Accepted: 30 ...

  4. CSS :focus 伪类

    :focus -- CSS :focus 伪类,适用于已获取焦点的元素的样式 语法: :focus CSS版本:CSS2 说明: 适用于已获取焦点的元素的样式,例如:表单的input输入框可以输入文字 ...

  5. Objective-C 2.0的运行时编程

    Objective-C 2.0 的运行时环境叫做Morden Runtime,iOS 和Mac OS X 64-bit 的程序都运行在这个环境,也就是说Mac OS X 32-bit 的程序运行在旧的 ...

  6. 《Code Complete》ch.25 代码调整策略

    WHAT? 本章讨论程序性能调整问题.但是对用户来说,程序员按时交付软件,提供一个清爽的用户界面,避免系统经常死机常常比程序性能更加重要 WHY? 在程序设计这种文化中,编写出能够节省几微秒的代码可以 ...

  7. 前端开发 Grunt 之 Connect

    在前端开发过程中,我们需要在开发过程中,将开发中的站点部署到服务器上,然后,在浏览器中查看实际的效果,在 Grunt 环境下,可以直接使用集成在 Grunt 中的 Connect 插件完成站点服务器的 ...

  8. 三种硬件平台运行Laxcus大数据系统的表现

    从2.0版本开始,Laxcus大数据管理系统开始支持POWERPC.X86.ARM三种平台.其中X86和ARM又分为32位和64位两种,POWERPC是纯64位,所以实际上共有五种平台,操作系统统一使 ...

  9. canvas-7globleCompositeOperation2.html

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. 操作系统是怎么工作的——mykernel环境的搭建

    可以参见:https://github.com/mengning/mykernel 首先感谢:http://www.euryugasaki.com/archives/1014 1.搭建实验环境(实验环 ...