PHP中的GetType和SetType

PHP中的GetType和SetType

 

大部分的可变函数都是用来测试一个函数的类型的。PHP中有两个最常见的函数,分别是gettype()和settype()。这两个函数具有如下所示的函数原型,通过他们可以获得要传递的参数和返回的结果。

  1. string gettype(mixed var);
  2. bool settype(mixed var,string type);

要使用gettype()函数,必须先给它传递一个变量。它将确定变量的类型并且返回一个包含类型名称的字符串:bool、int、double、string、array、object和resource。如果变量类型不是标准类型之一,该函数就会返回“unknown type(未知类型)”。

要使用settype()函数,必须先给它传递一个要被改变的变量,以及一个包含了上述类型列表中的某个类型的字符串,比如下面的例子:

  1. <?php
  2. $a = 56;
  3. echo GetType($a) . ‘<br />’; //将会输出 integer
  4. settype($a, ‘double’);
  5. echo GetType($a). ‘<br />’; //将会输出double
  6. ?>

当第一次调用gettype()时,$a 的类型是整数。在调用setype()后,它就变成了双精度类型。

PHP还提供了一些特定类型的测试函数。每一个函数都使用一个变量作为其参数,并且返回 true 或 false 。这些函数如下:

  • is_array():检查变量是否是数组。
  • is_double()、is_float()、is_real() (所有都是相同的函数):检查变量是否是浮点数。
  • is_long()、is_int()、is_integer() (所有都是相同的函数):检查变量是否是整数。
  • is_string():检查变量是否是字符串。
  • is_bool():检查变量是否是布尔值。
  • is_object():检查变量是否是一个对象。
  • is_resource():检查变量是否是一个资源。
  • is_null():检查变量是否是null。
  • is_scalar():检查该变量是否是标量,即,一个整数、布尔值、字符串或浮点数。
  • is_numeric():检查该变量是否是任何类型的数字或数字字符串。
  • is_callable():检查该变量是否是有效的函数名称。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/113612.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java 实现多态_Java多态的实现原理

    java 实现多态_Java多态的实现原理0.前言多态在Java技术里有很重要的地位,在面试中也会经常被问到。多态的使用大家应该都比较了解,但是多态的实现原理就有点抽象了,查了很多很多资料,连续几天断断续续的看,有时候看着看着就走神了。毕竟太抽象,哈哈~不过依然硬着头皮看下来了(也不知道看了多少遍),并且将很多资料里关于多态的知识进行了整理(添添加加删删减减了很久,也把重点根据自己的理解用红字标出),便有了这篇文章。通过这篇文章相信可以帮…

    2022年7月7日
    18
  • nactive激活码_在线激活

    (nactive激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/ide…

    2022年3月27日
    67
  • GoogleEarth出新版-4.2版【含天际地图和中文版】「建议收藏」

    GoogleEarth出新版-4.2版【含天际地图和中文版】「建议收藏」GoogleEarth终于发布4.2版了,强烈建议大家去下载这个版本,因为这个版本不仅有繁体中文的支持,而且还包含了一个有趣的东西:GoogleSky(天际地图)。

    2022年7月3日
    33
  • JS Array ECMAScript5 Methods

    JavaScript的新版本(ECMAScript5)中,为数组新增了一些方法。这些方法包括:forEach(f[,o]):此方法类似于for/in循环,其作用是遍历整个数组并执行函数的某些

    2021年12月22日
    35
  • 不安装cudnn可不可以_cuDNN安装「建议收藏」

    不安装cudnn可不可以_cuDNN安装「建议收藏」这个系列写了好几篇文章,这是相关文章的索引,仅供参考:去年上半年配置了一台GTX1080深度学习主机:深度学习主机攒机小记,然后分别写了两篇深度学习环境配置的文章:深度学习主机环境配置:Ubuntu16.04+NvidiaGTX1080+CUDA8.0和深度学习主机环境配置:Ubuntu16.04+GeForceGTX1080+TensorFlow,得到了很多同学留言,不过这个一年…

    2022年5月6日
    186
  • 简单探讨spring整合mybatis时sqlSession不需要释放关闭的问题

    简单探讨spring整合mybatis时sqlSession不需要释放关闭的问题近期,在使用spring和mybatis框架编写代码时,sqlSession不需要手动关闭这一点引起了我的兴趣。我们都知道,单独使用mybatis时,sqlSeesion使用完毕后是需要进行手动关闭的,但为什么在和spring整合后就不需要了呢?在查阅了资料后得知,这是使用了spring中的AOP面向切面编程和动态代理技术。但是我认为脱离代码谈技术就是耍流氓。因此,我对MyBatis-Spr…

    2022年6月18日
    38

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号