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. HTML--11marquee标签

    页面的自动滚动效果,可由javascript来实现, 但是有一个html标签 - <marquee></marquee>可以实现多种滚动效果,无需js控制. 使用marquee ...

  2. 获取一个 app 的 URL Scheme 的方法:

    获取一个 app 的 URL Scheme 的方法: 上这个网站 URL Schemes 查一下相应的 app 的 URL Scheme 是否有被收录 第一种方法没找到的话,把相应的 app 的 ip ...

  3. operation not possible due to RF-kill

    使用mdk3时出现这个问题operation not possible due to RF-kill 就是输入第一条命令 后出现 operation not possible due to RF-ki ...

  4. 3D中的切线空间简介

    转自:http://www.cnblogs.com/cxrs/archive/2009/10/25/1589515.html 1. 什么是Tangent space? Tangent space和wo ...

  5. ios应用数据存储方式

    一.ios应用常用的数据存储方式 1.plist(XML属性列表归档) 2.偏好设置 3.NSKeydeArchiver归档(存储自定义对象) 4.SQLite3(数据库,关系型数据库,不能直接存储对 ...

  6. ERP联系人查询和修改(十六)

    查看和修改是同一个界面: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="L ...

  7. Angularjs相关理论

    1.AngularJS的工作流程: (1)浏览器载入HTML,然后把它解析成DOM (2)浏览器载入angularjs脚本 (3)AngularJS等到DOMContentLoaded事件触发 (4) ...

  8. iOS:死锁

    死锁:指多个进程因竞争共享资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进. 安全状态与不安全状态:安全状态指系统能按某个进程顺序来为每个进程分配其所需资源,直至最大需求,使每个进程 ...

  9. Mercurial使用简单介绍【转】

    Mercurial可以使异地开发进行统一的版本管理,比如一个项目有一部分人在银行内部开发无法用外网,另一部分人在公司开发,这两部分人需要一个统一的版本管理工具,mercurial这时候可以发挥作用 m ...

  10. html文字垂直居中

    比如一个div  需设置height的高度和line-height一样. <div style="height:30px;line-height:30px;"> OK. ...