标签:类型转换 strong 操作系统 大小 系统 数据类型 相关 type 四种
常量
定义:
形式一
// define("PI",常量值);
define("PI",3.14);
define("school","讲理");
形式二
// 定义形式二
const cc1 = 1234;
const cc2 = "abcd";
使用:
形式一
// 直接使用常量名
echo "PI的值:".PI;
形式二
// 通过constant函数,灵活性体现-->常量名也能够变
// 利用变量拼凑常量名)
echo "PI的值:".constant("PI");
ps:
defined(常量名)
函数推断。提前定义常量
定义:系统中预先定义好的一些常量,大约有几百个。我们仅仅须要知道当中几个即可:
魔术常量
定义:事实上仅仅是常量的形式。但没有常量的“恒常”,其值事实上会变化的,仅仅是非常少的几个:
数据类型
整体划分:
在php中有8中数据类型
基本类型(标量类型)
复合类型:
特殊类型:
整数类型
整数类型有4种写法:
$n1 = 123; // 10进制写法
$n2 = 0123; // 8进制写法
$n3= 0x123; // 16进制写法
$n4 = 0b11101 // 二进制写法
进行转换:
10进制转其它3种进制:
其它3种进制转10进制
浮点类型:
浮点数的两种表示形式:
常规写法
v1 = 123.456
科学计数法:带一个特殊符号
$v1 = 123.456E2 // 含义为:123.456乘以10的2次方,结果是浮点数
$v2 = 123.456E3; // 含义为:123.456乘以10的3次方,结果是浮点数
$v3 = 123E4; // 含义为:123乘以10的4次方,结果还是浮点数
浮点数使用的细节:
浮点数不应进行大小比較:
解决的方法:将浮点数转换成整数(乘以10的多次方)再比較
浮点数的小数部分可能无法用二进制精确表示;
当整数的运算结果超出整数的表示范围为的时候。系统自己主动将结果转换成浮点型.
字符串
四种形式:
$str1 = "字符串内容...";
$str2 = ‘字符串内容...‘;
$str3 = <<<"标识符A"
字符串内容
标识符A;
$str4 = <<<"标识符B"
字符串内容
标识符B;
单引號字符串:
// 单引號字符串。=,须要转义或能够识别的转义符有:\和‘
$str1 = ‘abcdefg‘;
双引號字符串:
// 双引號字符串,须要转义或能够识别的特殊符号有:\,",\n,\r(回车符),\t(tab符),$。
// 事实上就是取消了其在双引號字符串中的变量的“起始含义”
$str2 = "abcdefg";
双引號定界符字符串:
// 双引號定界字符串,须要转义能够识别的特殊符号有:\n,\,
//\r,\t。双引號和单引號能够直接写出
$str4=<<<"ABCD"
abcdef,这里事实上就是字符串的内容
ABCD;
注意:
单引號定界字符串:
// 单引號定界字符串,没有须要转义或者能够识别的特殊字符
$str3=<<<‘ABCD‘
abcdef,这里事实上就是字符串的内容
ABCD;
布尔类型(仅仅有两个数据:true 或 false)
单词:bool,boolean
常见使用形式
对变量直接作推断(參考手冊);
定义一个变量,用作推断标识。
类型转换
自己主动转换:
在不论什么运算中,假设须要某种类型的数据。而给出的数据不是该类型。通常都会发生自己主动类型转换,
比方:octdec(),bindec()…
在php中。算术运算符(包含-,*,/,%),就仅仅是对数值进行计算,如
$sum = "1" + "2"; // sum的值就是3
强制类型转换:
?自己主动类型转换时由”运算符“运算的时候决定的,而强制类型转换就是显示通过语法转换目标数据类型:
// 形式为:(要转换的数据类型)数据
$i = 10;
$s = (string)$i;
通常的转换目标类型有:(int),(float),(string),(bool),(array),(object)
改变原来变量的数据类型:
?上述强制类型转换中,并不会改变该变量本身的数据类型。相应,有一个语法是直接改变原来变量的数据类型:
settype($变量名,"目标类型");
类型相关的函数:
。。。
标签:类型转换 strong 操作系统 大小 系统 数据类型 相关 type 四种
原文地址:http://www.cnblogs.com/clnchanpin/p/7073802.html