PHP学习笔记(三):数据类型转换与常量介绍

yipeiwu_com6年前PHP代码库

一、PHP数据类型相互转换

1、强制转换

复制代码 代码如下:

// bool,int,float,string,array,object,null
bool settype ( mixed $var , string $type )

1)会改变原变量的类型
复制代码 代码如下:

$a= "123a"; // string
settype($a, "int"); // 勿遗漏双引号
var_dump($a);

2)在赋值前定义,不改变原变量类型
复制代码 代码如下:

$a = "123abc";
$b = (int)"123abc";
var_dump($a);

Tips:避免内存溢出,整型4字节(2.147E9),浮点型8字节

2、自动转换

根据运行环境自动转换,例如加号“+”。如果任何一个操作数是浮点数,则所有的操作数都被当成浮点数,结果也是浮点数。

复制代码 代码如下:

$foo = “0″;  // $foo 是字符串 (ASCII 48)
$foo += 2;   // $foo 现在是一个整数 (2)
$foo = $foo + 1.3;  // $foo 现在是一个浮点数 (3.3)
$foo = 5 + “10 Small Pigs”;     // $foo 是整数 (15)

3、变量测试函数
复制代码 代码如下:

is_bool()、is_numeric()、is_float()、is_int()...
is_scalar() //检测变量是否是一个标量

二、常量的声明与使用
复制代码 代码如下:

//定义后不能改变,可在任意地方访问
//默认大小写敏感,习惯大写
//常量值只能用标量(int、float、string、bool)
//常量必须声明时就赋值
define("常量名","值")

检查常量是否存在
复制代码 代码如下:

bool defined ( string $name )
var_dump(defined('a')); //勿遗漏了引号

相关文章

PHP实时统计中文字数和区别

1、PHP 中如何正确统计中文字数?这个是困扰我很久的问题,PHP 中有很多函数可以计算字符串的长度,比如下面的例子,分别使用了 strlen,mb_strlen,mb_str...

PHP 数组遍历方法大全(foreach,list,each)

在PHP中数组分为两类: 数字索引数组和关联数组。 其中数字索引数组和C语言中的数组一样,下标是为0,1,2… 而关联数组下标可能是任意类型,与其它语言中的hash,map等结构相似。...

PHP判断变量是否为0的方法

复制代码 代码如下: <? if($_POST['some'] != null) { //It's Not Empty } ?>...

PHP中将字符串转化为整数(int) intval() printf() 性能测试

背景、概述   早在Sql注入横行的前几年,字符串转化为整数就已经被列为每个web程序必备的操作了。web程序将get或post来的id、整数等值强制经过转化函数转化为整数,过滤掉危险字...

详解php用static方法的原因

静态方法不需要所在类被实例化就可以直接使用。 静态方法效率上要比实例化高,静态方法的缺点是不自动进行销毁,而实例化的则可以做销毁。 静态方法和静态变量创建后始终使用同一块内存,而使用实例...