跳转到主要内容
你行网

Main navigation

  • 首页
  • 文章
  • 教程
  • 视频
  • 下载
  • 社区
  • 网站导航
User account menu
  • 登录

面包屑

  1. 首页

PHP数据类型及其作用总结

由 hrs, 10 五月, 2025

PHP 数据类型及其作用
PHP 支持多种数据类型,主要分为三类:

标量类型(基本类型)

复合类型

特殊类型

1. 标量类型(Scalar Types)
1.1 整型(Integer)
作用:存储整数,可以是正数或负数

范围:通常为 -2^31 到 2^31-1(32位系统)或 -2^63 到 2^63-1(64位系统)

示例:$age = 25;

1.2 浮点型(Float/Double)
作用:存储带小数点的数字

示例:$price = 19.99;

1.3 字符串(String)
作用:存储文本数据

特点:可以用单引号、双引号、heredoc 或 nowdoc 语法定义

示例:$name = "John";

1.4 布尔型(Boolean)
作用:表示真或假

值:true 或 false

示例:$is_active = true;

2. 复合类型(Compound Types)
2.1 数组(Array)
作用:存储多个值的有序集合

特点:可以是索引数组、关联数组或多维数组

示例:

php
$colors = array("red", "green", "blue");
$person = ["name" => "John", "age" => 30];
2.2 对象(Object)
作用:存储类的实例

特点:可以包含属性和方法

示例:

php
class Person {
   public $name;
   function sayHello() {
       echo "Hello!";
   }
}
$person = new Person();
3. 特殊类型(Special Types)
3.1 资源(Resource)
作用:存储对外部资源的引用(如数据库连接、文件句柄等)

特点:不是实际的数据类型,而是资源句柄

示例:$file = fopen("test.txt", "r");

3.2 NULL
作用:表示变量没有值

特点:唯一可能的值是 null

示例:$var = null;

4. 伪类型(Pseudo-types)
PHP 文档中还使用一些伪类型来说明参数或返回值:

4.1 Callable
作用:表示可以作为回调函数的参数

示例:$callback = 'myFunction';

4.2 Iterable
作用:表示可以被遍历的数据类型(数组或实现了 Traversable 接口的对象)

示例:function foo(iterable $iterable) { ... }

4.3 Mixed
作用:表示可以接受任何类型的参数

示例:function bar(mixed $param) { ... }

5. 类型转换
PHP 是弱类型语言,但支持显式类型转换:

php
$var = "123";
$int = (int)$var;    // 转换为整型
$float = (float)$var; // 转换为浮点型
$str = (string)$int; // 转换为字符串
$bool = (bool)$var;  // 转换为布尔型
$array = (array)$var; // 转换为数组
$obj = (object)$var; // 转换为对象
6. 类型检测函数
PHP 提供了一系列函数来检测变量类型:

is_int(), is_integer(), is_long()

is_float(), is_double()

is_string()

is_bool()

is_array()

is_object()

is_resource()

is_null()

is_callable()

is_iterable()

is_scalar() - 检测变量是否是标量

gettype() - 获取变量类型字符串表示

以上是 PHP 中所有主要的数据类型及其作用。PHP 8.0 还引入了联合类型和更严格的类型系统,进一步增强了类型处理能力。

标签

  • php
  • 登录或注册以发表评论

评论

相关文章

php过滤器的作用和说明
php 会话使用方法
什么是PHPSTORM_META
php 数据类型和使用范围大小,和默认值
为什么session_start() 不用带参数
session_start(); 连接数据库前为什么要启用会话。
pdo连接方法和错误处理
PDO 和 MySQLi 连接数据库的区别
php的注释符号使用
类的自动加载是怎样去实现的。
一套框架的生命周期是多久
什么是类?
怎么实现一个静态化常用的设计模式
什么是面向对象,其主要特征是什么。
转义用户输入的特殊字符有哪些函数
语句中include和request区别是什么。
error repoting 函数的作用是什么
PHP中isset和empty的区别
move_uploaded_file 参数说明
PHP APCu 缓存设置建议

文章标签

CSS
Excel
ubuntu
php
vim
Linux
五笔
HTML
command
drupal 7
composer
centos
Mysql
drupal 8
模块(module)
drush
JavaSrcipt
apache
VPN
drupal 9
英语
Drupal
nerdtree
SEO
network
surround
果树种植
drupal10
主题(theme)
phpmyadmin
ssh
权限
yum
声音
二进制
ssl
selinux
HTML5
用户
password
Dreamweaver
flameshot
颜色
翻译
uploadprogress
视图(views)
firewalld
DDEV
gzip
快捷键
kernel
xdebug
错误
ckeditor
mbstring
C语言
certbot
源地址
电脑基础
git
php扩展
apt
简介
压缩解压
表单
httpd
电子秤
breadcrumb
邮件验证
AI
superfish
diff
重定向
网站备份
tagclouds
java
摄影
WireGuard
docker
adsense
drupal9
短信验证
simple_adsense
csharp
电脑技巧
算法
youtube
RSS
JavaScript
版本号
badblocks
端口
cookie
VUE
网站运营
计算机基础
form
gimp
mod_expires 模块
nginx
http验证
zip
重定向,301
curl
input
赚钱
maven
drupal 11
RFID
ip
dns
drupal11
npm
标签优化
netstat
哈希值
字段
更多
RSS源
本站由阿里云强力驱动,幸运券优惠链接
Copyright © 2019 - 2021 你行网 版权所有  粤ICP备19072650号