PHP学习(类型转化)

Posted baoyadong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP学习(类型转化)相关的知识,希望对你有一定的参考价值。

   php 在变量定义中不需要(或不支持)明确的类型定义;变量类型是根据使用该变量的上下文所决定的。也就是说,如果把一个 string 值赋给变量 $var $var 就成了一个 string 。如果又把一个 integer 赋给 $var ,那它就成了一个 integer 。 

   PHP 的自动类型转换的一个例子是加法运算符“+”。如果任何一个操作数是 float ,则所有的操作数都被当成 float ,结果也是 float 。否则操作数会被解释为 integer ,结果也是 integer 。注意这并没有改变这些操作数本身的类型;改变的仅是这些操作数如何被求值以及表达式本身的类型。 

 

如果要强制将一个变量当作某种类型来求值,需要类型强制转换

PHP 中的类型强制转换和 C 中的非常像:在要转换的变量之前加上用括号括起来的目标类型。

转为布尔型

要明确地将一个值转换成 boolean ,用 (bool) 或者 (boolean) 来强制转换。但是很多情况下不需要用强制转换,因为当运算符,函数或者流程控制结构需要一个 boolean 参数时,该值会被自动转换。 当转换为 boolean 时,以下值被认为是 FALSE

转换为整型

要明确地将一个值转换为 integer ,用 (int)(integer) 强制转换。不过大多数情况下都不需要强制转换,因为当运算符,函数或流程控制需要一个 integer 参数时,值会自动转换。还可以通过函数 intval() 来将一个值转换成整型。

参见:类型转换的判别

布尔值转换

FALSE 将产生出 0(零), TRUE 将产生出 1(壹)。

浮点型转换

当从浮点数转换成整数时,将向下取整。 

字符串转换为数值

当一个字符串被当作一个数值来取值,其结果和类型如下:

如果该字符串没有包含 \'.\',\'e\' 或 \'E\' 并且其数字值在整型的范围之内(由 PHP_INT_MAX 所定义),该字符串将被当成 integer 来取值。其它所有情况下都被作为 float 来取值。

该字符串的开始部分决定了它的值。如果该字符串以合法的数值开始,则使用该数值。否则其值为 0(零)。合法数值由可选的正负号,后面跟着一个或多个数字(可能有小数点),再跟着可选的指数部分。指数部分由 \'e\' 或 \'E\' 后面跟着一个或多个数字构成。 

 

 

以上是关于PHP学习(类型转化)的主要内容,如果未能解决你的问题,请参考以下文章

PHP必用代码片段

php学习笔记-php中的数据转换

在php中,怎样把数字转化为字符串

如何把对象转化为字符串 php

56个PHP开发常用代码

php 如何将数据库中读出的datetime类型的时间转化成date类型的时间。 循环过程也需要。