强制转换中分为两种,第一种就只临时转换,和永久转换。在临时转换中呢,首先可以通过第一中方式来显示,就是小括号的形式,临时转换成整型我们可以通过(int)都是这样的形式,或者是(integer)临时转换成整型,再往下再来看,临时转成浮点类型可以通过(float)或者是(double)或者是(rea!)临时转换成浮点类型,第三个临时转换成布尔类型,可以通过(boolean)或者你可以试验一下(bool)缩写的形式,我们可以来尝试写上一个布尔类型,再往下呢还可以转换成字符串型。字符串型可以通过(string )字符串类型,接着呢也可以转换成空,可以通过(unset)的形式转换为空,还可以转换成数组,(array)的形式转换成数组,还可以转换成对象,但是记住不可以转换成资源(object)转换成一个对象,那首先呢我们先来试验一下这种()小括号的形式。

  来临时转换一个变量的类型。那临时转换的是没有真正转变,这个变量的类型。可以在这写一个$var=12;这是一个整型那接着我把它临时转换成浮点类型可以通过var_dump((float)$var,(double)$var,(real)$var);一起来打印多个,那看都是把这个()小括号类型放到变量以前,来实现我们的临时转换。

  那接着我们来运行一下,看一下结果。

  会看到三个float的12,证明可以。

  代码例

  <?php

  //临时转换

  $var=12;

  var_dump((float)$var,(double)$var,(real)$var);

  那再把它临时转换成字符串类型,再把它转换成String类型、bool类型,包括boolean的全称,var_dump((float)$var,(double)$var,(real)$var,(string)$var,(bool)$var,(boolean)$var);试验一下看看可不可以。

  String12,bool的true,bool的true没问题,没问题都可以那再把它转换成空,在var_dump((unset)$var,(array)$var,(object)$var);这是临时转换再来看一下。

  你看到一个null 一个数组array一个对象object都可以,那接着你看到这是转换成其它类型还有一个整型的我们没有实验,再来试验一下写上一个$string='3king';那现在用它转换成一个整型的话。

  var_dump((int)$string,(integer)$string);把它们临时转换成整型

  整形的3同样的记住我们的规则,字符串转换成整型的时候,是不是去合法部分啊。

  代码例;

<?php

//临时转换

$var=12;

var_dump((float)$var,(double)$var,(real)$var,(string)$var,(bool)$var,(boolean)$var);

echo '<hr/>';

var_dump((unset)$var,(array)$var,(object)$var);

echo '<hr/>';

$string='3king';

var_dump((int)$string,(integer)$string);

echo '<hr/>';

  对那最后呢我们在来实验一下,那几种转换成布尔类型的false,看看可不可以,写上一个$string='';转换成布尔类型的时候应该转换成var_dump((bool)$string);

  这时候你看到的就是一个bool类型的false没有问题,这是我们的临时转换通过这种小括号()的形式。

  代码例

  <?php

//临时转换

$var=12;

var_dump((float)$var,(double)$var,(real)$var,(string)$var,(bool)$var,(boolean)$var);

echo '<hr/>';

var_dump((unset)$var,(array)$var,(object)$var);

echo '<hr/>';

$string='3king';

var_dump((int)$string,(integer)$string);

echo '<hr/>';

$string='';

var_dump((bool)$string);

echo '<hr/>';

原文链接:http://www.maiziedu.com/wiki/php/coercion/

Php中的强制转换详解的更多相关文章

  1. 【转】C语言中不同的结构体类型的指针间的强制转换详解

    C语言中不同类型的结构体的指针间可以强制转换,很自由,也很危险.只要理解了其内部机制,你会发现C是非常灵活的. 一. 结构体声明如何内存的分布, 结构体指针声明结构体的首地址, 结构体成员声明该成员在 ...

  2. javascript强制转换详解

    转换成数值 Number函数强制转换成数值 数值->转换成原来的值 字符串->如果可以解析为数值,则转换成数值:否则转换成NaN或者0 true->1,falSe->0 und ...

  3. PHP中IP地址与整型数字互相转换详解

    这篇文章主要介绍了PHP中IP地址与整型数字互相转换详解,本文介绍了使用PHP函数ip2long与long2ip的使用,以及它们的BUG介绍,最后给出自己写的两个算法,需要的朋友可以参考下 IP转换成 ...

  4. c++中vector的用法详解

    c++中vector的用法详解 vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间 ...

  5. java中的io系统详解 - ilibaba的专栏 - 博客频道 - CSDN.NET

    java中的io系统详解 - ilibaba的专栏 - 博客频道 - CSDN.NET 亲,“社区之星”已经一周岁了!      社区福利快来领取免费参加MDCC大会机会哦    Tag功能介绍—我们 ...

  6. Objective-C中 Self和 Super详解

    Objective-C中 Self和 Super详解 Objective-C 中Self 和 Super 详解本文要介绍的内容,在 Objective-C 中的类实现中经常看到这两个关键字 self  ...

  7. javascript中=、==、===区别详解

    javascript中=.==.===区别详解今天在项目开发过中发现在一个小问题.在判断n==""结果当n=0时 n==""结果也返回了true.虽然是个小问题 ...

  8. Android中的windowSoftInputMode属性详解

    这篇文章主要介绍了Android中的windowSoftInputMode属性详解,本文对windowSoftInputMode的9个属性做了详细总结,需要的朋友可以参考下     在前面的一篇文章中 ...

  9. PHP开发中常见的安全问题详解和解决方法(如Sql注入、CSRF、Xss、CC等

    页面导航: 首页 → 网络编程 → PHP编程 → php技巧 → 正文内容 PHP安全 PHP开发中常见的安全问题详解和解决方法(如Sql注入.CSRF.Xss.CC等) 作者: 字体:[增加 减小 ...

随机推荐

  1. 开源镜像源(转自[tanghuimin0713的博客])

    参考: http://blog.csdn.net/longerzone/article/details/8437871 http://www.douban.com/note/375227086/ 1. ...

  2. 【unity3d游戏开发脚本笔记之一:坐标系选择对物体运动的影响】

    时间:2016年9月24日17:38:21   作者:yexiaopeng 博客园     在unity3d的世界中,其坐标系可分为四种,世界坐标系-WorldSpace   本地坐标系-LocalS ...

  3. JAVA 学习随笔 : JDK Enhancement Process JEP process

    是时候寻找一个学习JAVA的路径了 ---- JDK Enhancement Process Oracle发布了JDK增强提案与路线图进程,目的在于鼓励OpenJDK提交者贡献点子和扩展以改进Open ...

  4. instancesRespondToSelector与respondsToSelector的区别

    instancesRespondToSelector与respondsToSelector的区别   Test1.h @interface Test1 : NSObject - (void)objec ...

  5. Oracle11完全卸载

    1.停用oracle服务:进入计算机管理,在服务中,找到oracle开头的所有服务,右击选择停止 2.在开始菜单中,找到Universal Installer,运行Oracle Universal I ...

  6. Jquery EeasyUI等框架中图标的处理方法

    在使用Query EasyUI.Ext等框架开发项目的时候,经常会用到很多小的图标,常见几个图片应用方式总结如下: 一.在jQuery Easyui中添加小图标 1.添加图标的两小步: 先到theme ...

  7. Microsoft Azure 云存储服务概念

    本文包括了以下几点内容: 什么是Azure云存储服务? 云存储服务分类 云存储服务的优势 什么是Azure云存储服务? Azure 云存储服务可以说是Azure 上最重要的SAAS服务了. 在Azur ...

  8. <Interview Problem>二叉树根到叶节点求和值匹配

    题目大意:一颗二叉树,每个节点都有一个Value, 判断根节点到叶节点的路径求和值是否等于某个数Sum. 比如说如下这样一颗二叉树,76是45,21,10这条路径的求和值,77就没有满足条件的路径. ...

  9. 关于el jstl

    requestScope表示从request范围内取得.其他的还有sessionScope, pageScope和applicationScope,分别对应4种属性范围.而如果直接写${passwor ...

  10. grunt学习笔记

    1. 在使用grunt前需要执行的几条命令和用途 npm uninstall -g grunt  删除掉全局grunt npm install -g grunt-cli 把grunt加入你的系统搜索路 ...