首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP 資料類型完整體系:標量、複合、特殊類型深度解析

     編輯:PHP 綜合知識

PHP 擁有豐富的型別系統,分為標量、複合、特殊三大類,共 8 種基本型別。理解型別特性與轉換規則是編寫健壯代碼的前提。

型別分類總覽

分類型別關鍵字說明
標量類型整數integer / int整數值,支援 10/8/16 進制
浮點數float / double小數、科學記號
布林值boolean / booltrue / false
字串string文字序列,無長度限制
複合類型陣列array有序映射,鍵值對集合
物件object類實例,封裝屬性與方法
特殊類型空值null無值狀態
資源resource外部資源句柄(檔案、資料庫連線等)

整數

<?php
$a = 10;           // 十進制
$a = 0123;         // 八進制(0 開頭)= 83
$a = 0x1A;         // 十六進制(0x 開頭)= 26

echo PHP_INT_SIZE;  // 整數位元組數(4 或 8)
var_dump($a);       // 型別與值檢視
echo PHP_INT_MAX;   // 最大整數值
?>
  • PHP 整數為有號數,不支援無號整數
  • 32 位系統範圍:-2,147,483,648 ~ 2,147,483,647
  • 64 位系統範圍大幅擴展

進制轉換示範

// 八進制 0123 → 十進制
// 3×8⁰ + 2×8¹ + 1×8² = 3 + 16 + 64 = 83

// 十六進制 0x1A → 十進制
// A=10 → 10×16⁰ + 1×16¹ = 10 + 16 = 26

浮點數

  • 精度約 14 位有效數字(含小數點前數字)
  • 科學記號支援:1.2e3 = 1200
  • 精度陷阱:floor((0.1+0.7)*10) 可能得 7 而非 8

布林值

以下值在布林語境下為 false:false、0、0.0、""、"0"、[]、null、未定義變量。其餘皆為 true。

字串

  • 單引號、雙引號、Heredoc、Nowdoc 四種定義方式
  • 串接運算子:.(非 +)
  • 無長度限制(受 memory_limit 限制)

型別檢測與轉換

var_dump($var);           // 詳細型別資訊
gettype($var);            // 取得型別字串
is_int($var); is_array($var); // 型別判斷函數
(int)$var; (string)$var;  // 強制轉型
settype($var, 'integer'); // 就地轉型

掌握型別系統細節,能有效避免隱性轉換導致的邏輯錯誤與安全漏洞。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved