PHP 数据类型

PHP 数据类型

1.标量类型 float, int, string, bool

2.复合类型 array ,object

3.特殊类型 null resouce

 

整数的三种表示方法

十进制:$num =123;

八进制:$num =0123;

十六进制:$num =0x123;

 

进制转换关键字

十进制 dec

二进制 bin

八进制 otc 

十六进制 hex

<?php
    echo "<h4>100 十进制转换:</h4>";
    $bin =decbin(100);
    $oct=decoct(100);
    $hex=dechex(100);
    echo "<table border='1'>";
    echo "<tr><td>源进制</td><td>源值</td><td>目标进制</td><td>目标值</td><td>目标类型</td></tr>";
    echo "<tr><td>十</td><td>100</td><td>二进制</td><td>$bin</td><td>" .  gettype($bin) . "</td></tr>";
    echo "<tr><td>十</td><td>100</td><td>八进制</td><td>$oct</td><td>" .  gettype($oct) . "</td></tr>";
    echo "<tr><td>十</td><td>100</td><td>十六进制</td><td>$hex</td><td>" .  gettype($hex) . "</td></tr>";
    echo "</table>";
    
    echo "<h4>100 其他进制转换十进制:</h4>";
    
    echo "<table border='1'>";
    echo "<tr><td>源进制</td><td>源值</td><td>目标进制</td><td>目标值</td><td>目标类型</td></tr>";
    echo "<tr><td>二</td><td>"  . $bin . "</td><td>十进制</td><td>" . bindec($bin) . "</td><td>" .  gettype(bindec($bin)) . "</td></tr>";
    echo "<tr><td>八</td><td>"  . $oct . "</td><td>十进制</td><td>" . octdec($oct) . "</td><td>" .  gettype(octdec($oct)) . "</td></tr>";
    echo "<tr><td>十六</td><td>" . $hex . "</td><td>十进制</td><td>" . hexdec($hex) . "</td><td>" .   gettype(hexdec($hex)) . "</td></tr>";
    echo "</table>";
?>

100 十进制转换:

源进制 源值 目标进制 目标值 目标类型
100 二进制 1100100 string
100 八进制 144 string
100 十六进制 64 string

100 其他进制转换十进制:

源进制 源值 目标进制 目标值 目标类型
1100100 十进制 100 integer
144 十进制 100 integer
十六 64 十进制 100 integer

 

如果 传递 bindec(),octdec(),hexdec(), 如果方法里面的参数不是字符串类型而是数字类型,则会先进行转换为十进制,再转换为字符串类型

代码如下:

echo "<h1>" . bindec(0123). "</h1>";    //输出0
echo "<h1>" . bindec("0123"). "</h1>";    //输出1

 

0123 = 83 = “83” ; bindec(0123) =bindec(“83”) =0 ;

 

2.float 2种表达方法

<?php

$f =1.2345;
$f2 =1.2345E3;
$f3 =12345E3;
echo "<h1>" .  $f . "</h1>";
echo "<h1>" .  $f2. "</h1>";
echo "<h1>" .  $f3. "</h1>";
?>

1.绝大部分的小数无法完整转换为二进制

2.不应该直接进行大小值比较,因为浮点数在系统内部,很可能都是不精确。如果实在要比较,则在考虑精度的情况下转化为整数进行比较。放大精度次方进行放大。即1.2345*10000 精度4进行比较

3.当整数运算结果后超过整数后会自动转换为浮点数。

 

string 类型

1、单引号字符串

2、双引号字符串

3、单引号分界符字符串

4、双引号分界符字符串

代码如下:

<?php
$txt ="我是文本";
//单引号
//能识别\\ \' 不能识别\n 变量
$str1 ='i am single \n \\ \' ddddd$txt';
//双引号
//能识别\\ \' \n $变量 等
$str2="i am double \n \\ \' \" ddddd$txt";
echo "<br/>" .  $str1;
echo "<br/>" .  $str2;

//无法识别$变量
//',""无需转义
$str3 = <<<'flag1'
单引号界限字符串aaaaaaaaa"
aaaaaaaaa
aaaaaaaaa"别$txt 
flag1;

//可以识别$变量
//',""无需转义
$str4 = <<<"flag2"
双引号界限字符串aaaaaaaaa
aaaaaaaaa
aaaaaaaaa'iefie别$txt 
flag2;

echo "<br/>" .  $str3;
echo "<br/>" .  $str4;
?>

输出界面如下:

<html>
<head></head>
<body>
<br>i am single \n \ ' ddddd$txt<br>i am double 
 \ \' " ddddd我是文本<br>单引号界限字符串aaaaaaaaa"
aaaaaaaaa
aaaaaaaaa"别$txt <br>双引号界限字符串aaaaaaaaa
aaaaaaaaa
aaaaaaaaa'iefie别我是文本 
</body>
</html>

由此看出有各自的特点,需要根据实际情况使用。

 3、对象类型

<?php
class Person{
    public $Name ="";
    public $Age=0;
    public function  Introduce(){
        echo $this->Name;
        echo $this->Age;
    }
}
$p = new Person();
$p->Name="xiaoming";
$p->Age=17;
$p->Introduce();
?>

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/holy-night/articles/5122608.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

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


相关推荐

  • Idea激活码永久有效Idea2019.3.3激活码教程-持续更新,一步到位

    Idea激活码永久有效Idea2019.3.3激活码教程-持续更新,一步到位Idea激活码永久有效2019.3.3激活码教程-Windows版永久激活-持续更新,Idea激活码2019.3.3成功激活

    2022年6月17日
    126
  • java Calendar日期相减问题

    java Calendar日期相减问题两个日期相减,必须是Date型变量使用其getTime()后相减,所以如果是从Calendar获得时间,则需:Calendardate1=Calendar.getInstance();Calendardate2=Calendar.getInstance();date1.getTime().getTime()-date2.getTime().getTime();结果为

    2022年6月3日
    64
  • 鸿蒙树莓派4b,树莓派4B

    鸿蒙树莓派4b,树莓派4B作者:长空无名最近很多科技媒体都报道了树莓派4发布的消息。虽然整个板子做了大幅升级,基础价格却依然是35美元,称的上是业界良心。那号称史上性能最强的树莓派4,到底有哪些亮点呢?一起来看产品图。USB-C供电口1.5GHz四核64位ARMCortex-A72CPU1GB/2GB/4GBLPDDR4SDRAM内存(可选)全吞吐量千兆以太网(真千兆)双频802.11ac无线网络蓝牙5…

    2022年4月30日
    59
  • Selenium:Chrome、Edge、Firefox、Opera、Safari常用WebDriver下载安装[通俗易懂]

    Selenium:Chrome、Edge、Firefox、Opera、Safari常用WebDriver下载安装[通俗易懂]简介:Selenium中运行需要先配置WebDriver,各主流浏览器安装配置大同小异。关联攻略:Selenium分布式运行:SeleniumGridPython+Jenkins+Selenium-Grid实现分布式web-ui自动化测试(centos+win10为例)基本操作:1、下载安装目标浏览器。2、查看浏览器版本:设置-帮助/关于浏览器等3、下载driver4、解压driver复制粘贴到配置好的环境变量Python所在目录5、编写代码调试启动注意事项:若找不到对

    2022年9月18日
    3
  • linux mail发送邮件_shell传输文件

    linux mail发送邮件_shell传输文件Linux发邮件之mail命令详解发布于2017-01-0516:44:04|154次阅读|评论:0|来源:网友投递LinuxLinux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。这篇文章主要介绍了Linux发邮件之mail命令详解,详细的讲解…

    2022年10月20日
    4
  • 2011年年终珠三角为主的各种工种收入大全「建议收藏」

    2011年年终珠三角为主的各种工种收入大全「建议收藏」返回顶部 20楼2011-12-0508:35:13东莞。4300/月,所谓财务主管,老婆3200/月,所谓采购主管,小孩9个月,存款现在6000块,穿35块的皮鞋,280块的山寨手机。这日子是怎么过的啊!!无房贷无车贷,也就是无房无车!!我会计2200元包食.我老公6000多元不包食住.没房没车.一个小孩子在深圳读幼儿园.到现在存款只有几千元.

    2025年11月8日
    3

发表回复

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

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