PHP的数据是存在类型的概念的,弱类型指的是变量可以存储任何类型!一共8种,分别是:
整型、浮点型、布尔型、字符串(标量类型)

数组、对象(符合类型)

null、资源(特殊类型)

分成三大类:

标量类型:指的是一个数据表示一个值,也称为简单类型。

复合类型:指的是一个数据表示多个值,也称为集合类型。

特殊类型:不是常规数据,更倾向一种表示方式。

  • 布尔类型  bool    boolean

    •   表示逻辑的真和假,该数据就两个值 true表示真,false表示假,大小写不敏感~

      <?php
      
      var_dump(True);
      var_dump('false');//使用引号是错误的
      ?>
      <?php
      
      var_dump(True);
      ?>

        浏览器显示为:

    boolean  true

通常在判断的时候:关系表达式、或者if()需要的的条件等等,都需要布尔类型

整型  int  integer

  表示整型的数据,整型是有范围的,一个整型只能占用4个字节(4*8bit=32bit,32位),字节是最基本的数据存储单位,

位,计算机能够处理的最小单元,0和1

可以用预定义常量PHP_INT_MAX来得到最大值,

<?php

$evil = 182323328;
var_dump($evil);
echo '<hr>';
echo $evilxr = PHP_INT_MAX;
?>

  

php的整型有正负之分,最高位为符号位,1为负,0为正

负叔也有最小值,-2147483648,最小值的绝对值,要比最大值的绝对值大一!原因在于都是补码计算机

<?php

$evil = 182323328;
var_dump($evil);
echo '<hr>';
echo $evilxr = PHP_INT_MAX;
echo '<hr>';
echo $evilxr1 = -PHP_INT_MAX;//-2147483647 $evixr = $evilxr1 - 1;//-2147483648
var_dump($evilxr1);
var_dump($evixr-1)
?>

  

整型数据的表示

  整型支持三种表示方式,采用进制来区分,

  php支持的表示方式:十进制、八进制、十六进制。

  php提供了一些函数,可用于进制转换:

  

    10 dec

    2 bin

    8 oct

    16 hex

    decbin();

    hexdec();

      如——>Hexdec()十六转十:

<?php

echo '<hr>';
echo hexdec('ff');
?>

  

  浮点数  float

  php中没有区分单精度和双精度,因为只实现了双精度,浮点型就是双精度!

  浮点数,小数可以表示!

  

<?php

$evilxr = 40.4;
var_dump($evilxr);
?>

  整型不能表示的数也是浮点数:

  当数很大时,可以用科学计数法:

<?php

$evilxr = 40.4;
var_dump($evilxr);
echo '<hr>';
$kiss = 2E8;
var_dump($kiss);
echo '<hr>';
$kissme = 1e-4;//不能写成‘1e - 4’会报错
var_dump($kissme);
?>

  

 ps:几乎所遇小数,在保存时,保存的都是近似值而不是精确值~

字符串   string

  定义方式:单引号、双引号、定界符(heredoc)、定界符(newdoc)

  无论什么方式,最终得到的都是string字符串数据

    单引号:最简单、速度最快的定义字符串方式;

<?php
$akon = 'this name is akon';
var_dump($akon);
echo '<hr>';
$tired = 'I\'m a dog!';//因为字符串中包含了单引号,所以就用到了转义字符
var_dump($tired);
?>

  

双引号:

<?php
$akon = 'this name is akon';
var_dump($akon);
echo '<hr>';
$tired = 'I\'m a dog!';//因为字符串中包含了单引号,所以就用到了转义字符
var_dump($tired);
echo '<hr>';
$class_name1 = 'hello, $tired';
$class_name2 = "hello, $tired";//单引号和双引号的区别就在于对字符串内容的解析;单引号不能对变量进行解析,而双引号可以,
var_dump($class_name1, $class_name2);
?>

  数组

  

<?php
$arr1 = array('key1'=>'Very tired','key2'=>'evil',);//创建一个含元素的数组
var_dump($arr1);//输出数值类容
echo '<hr>';
echo $arr1['key2'];//访问数值中的元素
echo '<hr>';
$arr1['key3'] = 'kanvi';//增加数组元素
var_dump($arr1);
echo '<hr>';
var_dump(isset($arr1['key3']));//用isset()函数判断元素是否存在
echo '<hr>';
unset($arr1['key2']);//用unset()函数删除数组中的元素,也可删除数组
var_dump($arr1);
?>

  

 对象   Object

  和数组一样,可以保存多个数据,对象的每个数据称为对象的一个属性(property),php中中对象的创建,需要通过实例化(new)类(class)来完成

  类:相当于 设计图

  实例化:按照这几图制作一个成品(对象)的过程,对象能出现的前提是有一个类,类需要一个class关键字声明

<?php
class student{ //创建类
public $name;
public $age;
public $gender;
}
$stu = new student; //创建对象
var_dump($stu);
echo '<hr>';
$stu->name = '好饿吖';
$stu->age = 22;
$stu->gender = 'male';
var_dump($stu);
echo '<hr>';
var_dump($stu->age);
?>

  

补充

<?php
$data_int1 = 123; //十进制数
echo $data_int1;
echo "<br />";
$data_int2 = -123; //一个负数
echo $data_int2;
echo "<br />";
$data_int3 = 0123; //八进制叔
echo $data_int3;
echo "<br />";
$data_int4 = 0x123; //十六进制数
echo $data_int4;
echo "<br />";
?>

<?php
$man = "男";
$flag = $man =="男";
echo $flag ;
echo "<br />" ;
var_dump($flag);
?>

PHP学习——数据类型的更多相关文章

  1. MySQL学习——数据类型

    MySQL学习——数据类型 摘要:本文主要学习了MySQL数据库的数据类型. 整数类型 MySQL主要提供的整数类型有tinyint.smallint.mediumint.int.bigint,其属性 ...

  2. R学习----数据类型

    今天开始学习R语言了,没原因,就是想学 本人开发环境在ubuntu 16.04 LTS下 R命令提示符 终端直接输入R进入交互模式进行R学习.如下图 R脚本 # My first program in ...

  3. Java学习——数据类型【2】

    1. 对象与类 对象:类的一个实例,有状态和行为. 类:一个模板,描述一类对象的行状态和行为. 2. 类可以包含的变量 类型 局部变量 成员变量 类变量(静态变量) 定义位置 方法.或语句块中 类中, ...

  4. Redis 学习数据类型

    该文使用centos6.5 64位 redis-3.2.8 [root@localhost bin]# netstat -tunpl |grep 6379  查看redis 是否启动成功 一.Stri ...

  5. 转oracle 学习- 数据类型

    oracle数据类型 有道是,磨刀不误砍柴工.多了解一些底层的东西,对于Oracle开发.维护大有裨益.个人总结了一些Oracle数据类型集解,相信读者阅读了本文以后,Oracle数据库开发起来会事半 ...

  6. go 学习 ---数据类型

    25个关键字 程序声明:import, package 程序实体声明和定义:chan, const, func, interface, map, struct, type, var 程序流程控制:go ...

  7. python2 学习 数据类型和变量

    数据类型和变量 数据类型 整数 Python可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等. 计算机由于使用二进制,所以,有时 ...

  8. redis学习——数据类型

    一.内容简介 Redis不仅仅是简单的key-value 存储器,同时也是一种data structures server.传统的key-value是指支持使用一个key字符串来索引value字符串的 ...

  9. python学习-数据类型

    计算机处理的数据不单纯的指数字,计算机可以处理数字.文本.音频.视频等等各种数据,下面描述的是Python中可以直接使用和处理的基本数据类型.     整数 Python可以处理任意大小的整数,跟ja ...

  10. 20200105--python学习数据类型总结

    总结 python中的数据类型:整型/布尔类型/字符串/元组/列表/字典/集合 注意:列表,字典,集合都不能作为字典中的key,也不能作为集合中的元素 数据类型: (1)整型 (2)布尔类型:只有两个 ...

随机推荐

  1. JAVA之关于super的用法

    JAVA之关于super的用法   路漫漫其修远兮,吾将上下而求索.——屈原<离骚> 昨天写this用法总结的时候,突然产生了一个问题,请教别人之后,有了自己的一点认识.还是把它写下来,为 ...

  2. redis——基础介绍

    转自:http://www.cnblogs.com/xing901022/p/4863929.html 1 什么是Redis Redis(REmote DIctionary Server,远程数据字典 ...

  3. Hadoop c++开发

    假设你有上百G的数据,你要统计出这些数据中,含有某些你感兴趣的内容的数据的有多少条,你会怎么做?在硬件条件允许的情况下,用hadoop并行计算是一个不错的选择. 为了使本文得以清晰地说明,我们不妨假设 ...

  4. ios创建bundle的图片资源文件(转)

    在ios开发中为了方便管理资源文件,可以使用bundle的方式来进行管理,比如kkgridview里就是把所需的图片文件全部放在一个bundle来管理的 . 切记目前iOS中只允许使用bundle管理 ...

  5. tip use view.isineditmode() in your custom views to skip code when shown in eclipse

    tip use view.isineditmode() in your custom views to skip code when shown in eclipse

  6. php大力力 [036节] 后台系统的登录页面界面做完啦

    php大力力 [036节] 后台系统的登录页面界面做完啦 我认为做的不错,我就先不上截图啦 要你的祝福 分布注册 Twitter Login Or Signup Form 藤藤每日一练——172个Ic ...

  7. Python ~~~ 面向对象的利器

    class Rectangle(): # 有没有括号都行 . def __init__(self,x,y): self.x=x self.y=y def getPeri(self): def getA ...

  8. Spring注解和配置方式

    Spring提供了一个org.springframework.beans.factory.FactoryBean工厂类接口,用户可以通过实现该接口定制实例化Bean的逻辑. 从Spring3.0开始, ...

  9. dat文件中如何编写DOS的多行命令

    dat文件中如何编写DOS的多行命令 2012-10-15 11:29 四海柔情108 分享到:   2012-10-16 23:36 提问者采纳   你问的应该是BAT文件吧?BAT是DOS命令的批 ...

  10. WPF Step By Step 控件介绍

    WPF Step By Step 控件介绍 回顾 上一篇,我们主要讨论了WPF的几个重点的基本知识的介绍,本篇,我们将会简单的介绍几个基本控件的简单用法,本文会举几个项目中的具体的例子,结合这些 例子 ...