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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Activity启动模式SingleTask和Intent.FLAG_ACTIVITY_CLEAR_TOP区别

    Activity启动模式SingleTask和Intent.FLAG_ACTIVITY_CLEAR_TOP区别Activity启动模式介绍Android启动模式之前,先介绍两个概念task和taskAffinity task:翻译过来就是“任务”,是一组相互有关联的activity集合,可以理解为Activity是在task里面活动的。task存在于一个称为backstack的数据结构中,也就是说,task是以栈的形式去管理activity的,所以也叫可以称为“…

    2022年7月17日
    17
  • java编程软件下载_Ee Java(Java编程软件) V1.1.0 官方版

    java编程软件下载_Ee Java(Java编程软件) V1.1.0 官方版EeJava是一款专业实用的Java中文编程软件,基于java技术开发,继承其强大、稳定、安全、高效、跨平台等多方面的优点,目前是内测版本,后期会开源!【使用说明】将下载的jdkJRE替换软件目录中的JDKJRE配置环境变量1.安装完成后,右击我的电脑,点击属性,选择高级系统设置2.选择高级选项卡,点击环境变量在系统变量中设置3项属性,JAVA_HOME、PA…

    2022年7月7日
    21
  • 【C++基金会 06】explictkeyword

    【C++基金会 06】explictkeyword

    2022年1月11日
    50
  • 逻辑回归原理_逻辑回归分析

    逻辑回归原理_逻辑回归分析逻辑回归原理

    2022年4月21日
    56
  • 通俗讲解分布式锁:场景和使用方法

    通俗讲解分布式锁:场景和使用方法前言对于锁大家肯定不会陌生 比如 synchronized 关键字和 ReentrantLoc 可重入锁 一般我们用其在多线程环境中控制对资源的并发访问 但是随着业务的发展 分布式的概念逐渐出现在我们系统中 我们在开发的过程中经常需要进行多个系统之间的交互 于是上面的加锁方法就会失去作用 于是在分布式锁就自然而然的诞生了 接下来我们来聊一聊分布式锁实现的几种方式 分布式锁的使用场景 效率性 使用分布式锁可以避免不同节点重复相同的工作 正确性 分布式锁可以避免破坏正确性的发生 如

    2025年11月30日
    4
  • 过程控制系统与仪表pdf_计算机控制技术课程设计之炉温

    过程控制系统与仪表pdf_计算机控制技术课程设计之炉温目录一课程设计内容任务,,,,,,,,,,,,,,,,,,,,,,3二对课设任务的解读,,,,,,,,,,,,,,,,,,,,,,3三系统结构模型框图,,,,,,,,,,,,,,,,,,,,,,3四各部分程序流程图,,,,,,,,,,,,,,,,,,,,,,4五数字控制器设计,,,,,,,,,,,,,,,,,,,,,,5六系统仿真,,,,,,,,,,,,,,,,,,,…

    2022年9月29日
    3

发表回复

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

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