PHP 数据类型详解
                           
天天向上
发布: 2025-03-18 23:45:28

原创
912 人浏览过

在 PHP 中,变量不需要声明类型,PHP 会根据变量的值自动判断其数据类型。PHP 共有 8 种主要数据类型,分为 标量类型、复合类型 和 特殊类型


1. 标量(基础)数据类型

标量类型是 PHP 最基本的数据类型,包括:

  • 整型(integer)
  • 浮点型(float / double)
  • 字符串(string)
  • 布尔型(boolean)

1.1 整型(Integer)

整型(integer) 用于表示 整数,范围取决于运行环境的 PHP 版本和操作系统(通常 32 位系统的范围是 -2,147,483,648 ~ 2,147,483,647,64 位系统的范围更大)。

<?php
$int1 = 42;
$int2 = -100;
$int3 = 0x2A;  // 十六进制 (42)
$int4 = 012;   // 八进制 (10)
$int5 = 0b101; // 二进制 (5)

var_dump($int1, $int2, $int3, $int4, $int5);
?>

判断是否是整型

<?php
var_dump(is_int(42)); // true
?>

1.2 浮点型(Float / Double)

浮点数是带有小数部分或指数表示法的数字:

<?php
$float1 = 3.14159;
$float2 = 2.5e3; // 2500
$float3 = 8E-5;  // 0.00008

var_dump($float1, $float2, $float3);
?>

判断是否是浮点数

<?php
var_dump(is_float(3.14)); // true
?>

1.3 字符串(String)

PHP 的字符串可以用单引号或双引号表示:

<?php
$str1 = "Hello, World!";
$str2 = 'PHP is awesome!';
$str3 = "包含变量: $str1";  // 变量解析
$str4 = '不解析变量: $str1'; // 变量不会解析

echo $str3, "\n", $str4;
?>

字符串拼接

<?php
$first = "Hello";
$second = "World";
$full = $first . ", " . $second . "!";
echo $full; // 输出 "Hello, World!"
?>

字符串长度

<?php
echo strlen("Hello PHP"); // 9
?>

1.4 布尔型(Boolean)

布尔值只有 truefalse

<?php
$bool1 = true;
$bool2 = false;
var_dump($bool1, $bool2);
?>

布尔值的转换规则

<?php
var_dump((bool)0);       // false
var_dump((bool)42);      // true
var_dump((bool)"");      // false
var_dump((bool)"Hello"); // true
?>

2. 复合数据类型

复合类型用于存储多个值,包括:

  • 数组(array)
  • 对象(object)

2.1 数组(Array)

数组可以存储多个值:

<?php
$arr = array("Apple", "Banana", "Cherry");
var_dump($arr);
?>

关联数组

<?php
$user = array("name" => "John", "age" => 30);
echo $user["name"]; // John
?>

多维数组

<?php
$matrix = array(
    array(1, 2, 3),
    array(4, 5, 6)
);
echo $matrix[1][2]; // 6
?>

2.2 对象(Object)

PHP 使用 class 关键字创建对象:

<?php
class Car {
    public $brand;

    function __construct($brand) {
        $this->brand = $brand;
    }

    function getBrand() {
        return $this->brand;
    }
}

$myCar = new Car("Tesla");
echo $myCar->getBrand(); // Tesla
?>

3. 特殊数据类型

PHP 还提供了一些特殊数据类型:

  • NULL
  • 资源(Resource)

3.1 NULL

NULL 表示一个变量没有值:

<?php
$var = null;
var_dump($var);
?>

检查变量是否为 NULL

<?php
var_dump(is_null($var)); // true
?>

3.2 资源(Resource)

资源是对外部资源(如数据库、文件、图像等)的引用:

<?php
$file = fopen("test.txt", "r");
var_dump($file); // resource(type=stream)
?>

4. 类型转换

PHP 允许显式转换数据类型:

<?php
$var = "123";
$intVar = (int)$var;  // 转换为整型
$floatVar = (float)$var; // 转换为浮点数
?>

自动类型转换

<?php
$sum = "5" + 10; // 15,字符串自动转换为整数
var_dump($sum);
?>

总结

数据类型说明
整型(integer)存储整数,如 42
浮点型(float)存储小数,如 3.14
字符串(string)存储文本,如 "Hello"
布尔型(boolean)truefalse
数组(array)存储多个值
对象(object)存储类的实例
NULL变量没有值
资源(resource)文件、数据库连接等

更多详细内容请关注其他相关文章!

发表回复 0

Your email address will not be published. Required fields are marked *