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数据对象映射模式实例分析

本文实例讲述了PHP数据对象映射模式。分享给大家供大家参考,具体如下: 将对象和数据存储映射起来,对一个对象的操作映射为对数据存储的操作。 例如在代码中new 一个对象,使用数组对象映射...

PHP实现的操作数组类库定义与用法示例

本文实例讲述了PHP实现的操作数组类库定义与用法。分享给大家供大家参考,具体如下: 类库(完整类库): <?php class ArrayHelper{ /**...

PHP使用GD库输出汉字的方法【测试可用】

PHP使用GD库输出汉字的方法【测试可用】

本文实例讲述了PHP使用GD库输出汉字的方法。分享给大家供大家参考,具体如下: 一、原理 PHP中的GD库支持中文,但是必须要以UTF-8格式的参数来进行传递。下面先说一下汉字的UTF-...

PHP抽象类与接口的区别实例详解

本文实例讲述了PHP抽象类与接口的区别。分享给大家供大家参考,具体如下: 抽象类abstract 概念 定义为抽象的类不能被实例化。任何一个类,如果有一个方法是被声明为抽象的,那么这个类...

php设计模式 Decorator(装饰模式)

复制代码 代码如下: <?php /** * 装饰模式 * * 动态的给一个对象添加一些额外的职责,就扩展功能而言比生成子类方式更为灵活 */ header("Content-ty...