Rumah pembangunan bahagian belakang masalah PHP php中有几种变量类型

php中有几种变量类型

Jul 08, 2021 pm 02:15 PM
php Jenis boleh ubah

php中有8种变量类型,分别为:1、4种标量数据类型(boolean、string、integer、float);2、2种复合数据类型(Array和Object);3、2种特殊数据类型(NULL和资源数据类型)。

php中有几种变量类型

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

PHP 的数据类型可以分为三大类,分别是标量数据类型、复合数据类型和特殊数据类型,下面我们就来详细介绍一下这些数据类型。

标量数据类型

标量数据类型是数据结构的最基础单元,只能存储一个数据。在 PHP 中的标量数据类型分为四种,如下表所示:

类型 功能
boolean(布尔型) 最简单的数据类型,只有两个值:true(真) / false(假)
string(字符串) 字符串是连续的字符序列
integer(整型) 整型包含所有的整数,可以是正数也可以是负数
float(浮点型) 浮点型也是用来表示数字的,与整型不同除了可以表示整数外它还可以用来表示小数和指数

字符串

字符串是连续的字符序列,在其它语言中,字符和字符串是两种不同的数据类型,但在 PHP 中,统一将字符和字符串当作字符串数据类型。在 PHP 中,定义字符串有三种方式,分别是单引号方式、双引号方式、Heredoc 方式。

示例代码如下:

<?php
    //双引号方式声明字符串
    $str1 = "php中文网";  
    //单引号方式声明字符串
    $str2 = &#39;PHP 教程&#39;;      
    //Heredoc 方式声明字符串
    $str3 = <<<EOF
    url:
    https://www.php.cn/
EOF;
    echo $str1."<br>".$str2."<br>".$str3;
?>
Salin selepas log masuk

运行结果如下:

php中文网
PHP 教程
https://www.php.cn/
Salin selepas log masuk

整型

在 PHP 中,整型变量称为 integer 或 int 类型,用来表示一个整数,整型的规则如下所示:

  • 整型必须至少有一个数字(0~9);

  • 整型不能包含逗号或空格;

  • 整型不能包含小数点;

  • 整型可以是正数或负数。

整型的取值范围必须介于 -2E31 到 2E31 之间,可以用三种格式来表示,即十进制、十六进制(以 0x 为前缀)和八进制(以 0 为前缀)。

下面通过示例来演示一下整型的使用,示例中使用到了 PHP 的 var_dump() 函数,该函数可以返回变量的数据类型和值。

<?php
    $x = 5985;      // 定义一个整型数据类型的变量
    var_dump($x);   // 输出此变量
    echo "<br>";
    $x = -345;
    var_dump($x);   
    echo "<br>";
    $x = 0x8C;      //十六进制数字
    var_dump($x); 
    echo "<br>";
    $x = 047;       //八进制数字
    var_dump($x);
?>
Salin selepas log masuk

运行上面的代码,结果如下:

int(5985)
int(-345)
int(140)
int(39)
Salin selepas log masuk

注意,在 PHP7 版本中,含有十六进制字符的字符串不再被视为数字,而是当作普通的字符串,例如:

<?php
    var_dump("0x123" == "291");
    echo "<br/>";
    var_dump(is_numeric("0x123"));
    echo "<br/>";
    var_dump("0xe" + "0x1");
?>
Salin selepas log masuk

运行上面的代码,在 PHP5 中的输出结果如下:

bool(true)
bool(true)
int(15)
Salin selepas log masuk

在 PHP7 中的输出结果如下:

bool(false)
bool(false)
int(0)
Salin selepas log masuk

浮点型

浮点型在 PHP 中被称为 float 类型,也可称为实数,可以用来存储整数和小数,有效的取值范围是 1.8E-308 到 1.8E+308 之间。浮点数的精确度比整型数据类型要高。

示例代码如下:

<?php
    $num1 = 10.365;
    $num2 = 2.4e3;
    $num3 = 8E-5;
    var_dump($num1, $num2, $num3);
?>
Salin selepas log masuk

运行结果如下:

float(10.365) float(2400) float(8.0E-5)
Salin selepas log masuk

布尔型

布尔型只有两种值,分别是 TRUE 和 FALSE(不区分大小写),意为逻辑真和逻辑假。示例代码如下:

<?php
    $x = True;
    $y = faLsE;
    var_dump($x, $y);
?>
Salin selepas log masuk

运行结果如下:

bool(true) bool(false)
Salin selepas log masuk

复合数据类型

复合数据类型允许将多个类型相同的数据聚合在一起,表示为一个实体项。复合数据类型包括数组(Array)和对象(Object)

数组

数组是一组数据的集合,是将数据按照一定规则组织起来形成的一个整体。数组的本质是存储管理和操作一组变量。按照数组的维度划分,可以有一维数组、二维数组和多维数组。我们可以使用 array() 函数来创建数组。

示例代码如下:

<?php
    $arr = array(&#39;website&#39; => &#39;php中文网&#39;, &#39;url&#39; => &#39;https://www.php.cn/&#39;);
    echo "<pre class="brush:php;toolbar:false">";   // <pre class="brush:php;toolbar:false"> 是一个 HTML 标签,用来格式化输出内容
    var_dump($arr);
?>
Salin selepas log masuk

运行结果如下:

array(2) {
  ["website"]=>
  string(16) "php中文网"
  ["url"]=>
  string(23) "https://www.php.cn/"
}
Salin selepas log masuk

数组的应用多种多样,这里只是简单的介绍一下,我们会在后面的学习中为大家详细介绍。

对象

对象(Object)可以用于存储数据。在 PHP 中对象必须声明。首先必须使用 class 关键字声明类对象。类是可以包含属性和方法的结构。然后在类中定义数据类型,在实例化的类中使用数据类型。

在支持面向对象的语言中,可以把各个具体事物的共同特征和行为抽象成一个实体,称之为一个“类”,而对象是类使用 new 关键字实例化后的结果。

示例代码如下:

<?php
    class Car  //使用 class 声明一个类对象
    {
        var $color;
        function car($color="black") {
            $this->color = $color;
        }
        function getColor() {
            return $this->color;
        }
    }
    $car = new Car();
    $car->car(&#39;red&#39;);
    echo $car->getColor();
?>
Salin selepas log masuk

运行结果如下:

red
Salin selepas log masuk

更多有关面向对象的知识,我们会在后面为大家讲解。

特殊数据类型

在 PHP 中,有用来专门提供服务或数据的数据类型,它不属于上述标准数据类型中的任意一类,因此也被称为特殊数据类型,主要包括 NULL 和资源数据类型。

NULL

NULL 在 PHP 中是一种特殊的数据类型,它只有一个值,即 NULL,表示空值(变量没有值),需要注意的是它与空格的意义不同。

当满足下列条件时,变量的值为 NULL:

  • 变量被指定为 NULL 值;

  • 变量在没有被赋值前,默认值为 NULL;

  • 使用 unset() 函数删除一个变量后,这个变量值也为 NULL。

NULL 通常可以用来清空一个变量,示例代码如下:

<?php
    $str = &#39;hello&#39;;
    $str = NULL;
    var_dump($str);
?>
Salin selepas log masuk

运行结果如下:

NULL
Salin selepas log masuk

资源

资源(Resource)在 PHP 中同样是一种特殊的数据类型。它主要描述一个 PHP 的扩展资源,例如一个数据库查询(Query)、一个打开的文件句柄(fopen)或一个数据库连接(Database Connection)以及字符流(stream)等扩展类型。

但是我们并不能直接操作这个变量类型,只能通过专门的函数来使用。

如果上面所说的某一种情况出现时,例如使用 fopen 函数打开一个本地文件时,示例代码如下

<?php
    header("content-type:text/html;charset=utf-8");//设置编码,解决中文乱码
    $file = fopen("test.txt", "rw");//打开test.txt文件
    var_dump($file);
?>
Salin selepas log masuk

运行结果如下:

resource(3) of type (stream)
Salin selepas log masuk

资源是 PHP 提供的较强特性之一,它可以在 PHP 脚本中做自定义的扩展,类似于C语言结构中的引用,它的所有属性都是私有的,大家可以暂时将其理解为面向对象中的一个实例化对象。有关资源类型我们后面还会详细介绍。

推荐学习:《PHP视频教程

Atas ialah kandungan terperinci php中有几种变量类型. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Konfigurasi Projek CakePHP Konfigurasi Projek CakePHP Sep 10, 2024 pm 05:25 PM

Dalam bab ini, kita akan memahami Pembolehubah Persekitaran, Konfigurasi Umum, Konfigurasi Pangkalan Data dan Konfigurasi E-mel dalam CakePHP.

Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Panduan Pemasangan dan Naik Taraf PHP 8.4 untuk Ubuntu dan Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Tarikh dan Masa CakePHP Tarikh dan Masa CakePHP Sep 10, 2024 pm 05:27 PM

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Muat naik Fail CakePHP Muat naik Fail CakePHP Sep 10, 2024 pm 05:27 PM

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

Penghalaan CakePHP Penghalaan CakePHP Sep 10, 2024 pm 05:25 PM

Dalam bab ini, kita akan mempelajari topik berikut yang berkaitan dengan penghalaan ?

Bincangkan CakePHP Bincangkan CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Cara Menyediakan Kod Visual Studio (Kod VS) untuk Pembangunan PHP Dec 20, 2024 am 11:31 AM

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c

Pengesah Mencipta CakePHP Pengesah Mencipta CakePHP Sep 10, 2024 pm 05:26 PM

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.

See all articles