PHP에는 8가지 변수 유형이 있습니다. 1. 4가지 스칼라 데이터 유형(부울, 문자열, 정수, 부동 소수점) 2. 2가지 복합 데이터 유형(배열 및 객체) 3. 2가지 특수 데이터 유형(NULL 및 리소스) 데이터 유형).
이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터
PHP 데이터 유형은 스칼라 데이터 유형, 복합 데이터 유형 및 특수 데이터 유형의 세 가지 주요 범주로 나눌 수 있습니다. 다음과 같이 이러한 데이터 유형을 자세히 소개하겠습니다.
스칼라 데이터형
스칼라 데이터형은 데이터 구조의 가장 기본적인 단위로, 한 개의 데이터만 저장할 수 있습니다. 다음 표에 표시된 대로 PHP에는 네 가지 스칼라 데이터 유형이 있습니다.
유형 | 함수 |
---|---|
boolean(Boolean) | 가장 간단한 데이터 유형, 단 두 개의 값만 포함: true(true) / false(false) |
string(문자열) | String은 연속된 문자 시퀀스입니다 |
integer(정수) | integer에는 양수 또는 음수일 수 있는 모든 정수가 포함됩니다. |
float(부동) 포인트형) | 부동소수점형은 숫자를 나타내는 데에도 사용됩니다. 정수 외에도 소수, 지수를 나타내는 데에도 사용할 수 있습니다 |
String
문자열은 연속된 문자 시퀀스입니다. 다른 언어에서는 문자와 문자열이 서로 다른 두 가지 데이터 유형이지만, PHP에서는 문자와 문자열이 동일하게 문자열 데이터 유형으로 간주됩니다. PHP에서 문자열을 정의하는 방법에는 작은따옴표 방식, 큰따옴표 방식, Heredoc 방식이 있습니다.
샘플 코드는 다음과 같습니다.
<?php //双引号方式声明字符串 $str1 = "php中文网"; //单引号方式声明字符串 $str2 = 'PHP 教程'; //Heredoc 方式声明字符串 $str3 = <<<EOF url: //m.sbmmt.com/ EOF; echo $str1."<br>".$str2."<br>".$str3; ?>
실행 결과는 다음과 같습니다.
php中文网 PHP 教程 //m.sbmmt.com/
Integer 유형
PHP에서는 정수 변수를 정수 또는 int 유형이라고 하며, 이는 정수를 나타내는 데 사용됩니다. 정수 유형의 규칙은 다음과 같습니다.
정수에는 최소한 하나의 숫자(0~9)가 있어야 합니다.
정수에는 쉼표나 공백이 포함될 수 없습니다.
정수에는 소수점이 포함될 수 없습니다. ;
정수는 양수 또는 음수일 수 있습니다.
정수의 값 범위는 -2E31부터 2E31 사이여야 하며, 10진수, 16진수(접두사 0x), 8진수(접두사 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); ?>
위 코드를 실행하면 결과는 다음과 같습니다.
int(5985) int(-345) int(140) int(39)
PHP7 버전에서는 16진수 문자가 포함된 문자열이 더 이상 숫자로 처리되지 않고 일반 문자열로 처리됩니다. 예:
<?php var_dump("0x123" == "291"); echo "<br/>"; var_dump(is_numeric("0x123")); echo "<br/>"; var_dump("0xe" + "0x1"); ?>
위 코드 실행 , PHP5의 출력 결과는 다음과 같습니다.
bool(true) bool(true) int(15)
PHP7의 출력 결과는 다음과 같습니다.
bool(false) bool(false) int(0)
부동 소수점 유형
부동 소수점 유형은 PHP에서 부동 소수점 유형이라고 하며, 호출할 수도 있습니다. 실수이며 정수와 소수를 저장하는 데 사용할 수 있습니다. 유효한 값 범위는 1.8E-308에서 1.8E+308 사이입니다. 부동 소수점 숫자는 정수 데이터 유형보다 정밀도가 높습니다.
샘플 코드는 다음과 같습니다.
<?php $num1 = 10.365; $num2 = 2.4e3; $num3 = 8E-5; var_dump($num1, $num2, $num3); ?>
실행 결과는 다음과 같습니다.
float(10.365) float(2400) float(8.0E-5)
Boolean 유형
Boolean 유형에는 TRUE와 FALSE(대소문자를 구분하지 않음) 두 가지 값만 있습니다. 논리적 거짓. 샘플 코드는 다음과 같습니다.
<?php $x = True; $y = faLsE; var_dump($x, $y); ?>
실행 결과는 다음과 같습니다.
bool(true) bool(false)
복합 데이터 유형
복합 데이터 유형을 사용하면 동일한 유형의 여러 데이터를 함께 집계하여 엔터티 항목으로 표현할 수 있습니다. 복합 데이터 유형에는 배열(Array)과 객체(Object)가 포함됩니다.
Array
배열은 특정 규칙에 따라 구성된 전체 데이터의 모음입니다. 배열의 본질은 변수 집합을 저장, 관리 및 작동하는 것입니다. 배열은 크기에 따라 1차원 배열, 2차원 배열, 다차원 배열로 나눌 수 있습니다. array() 함수를 사용하여 배열을 만들 수 있습니다.
샘플 코드는 다음과 같습니다.
<?php $arr = array('website' => 'php中文网', 'url' => '//m.sbmmt.com/'); echo "<pre class="brush:php;toolbar:false">"; // <pre class="brush:php;toolbar:false"> 是一个 HTML 标签,用来格式化输出内容 var_dump($arr); ?>
실행 결과는 다음과 같습니다.
array(2) { ["website"]=> string(16) "php中文网" ["url"]=> string(23) "//m.sbmmt.com/" }
배열의 응용 분야는 다양합니다. 다음 연구에서는 이에 대해 간단히 소개하겠습니다.
객체
객체는 데이터를 저장하는 데 사용될 수 있습니다. 객체는 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('red'); echo $car->getColor(); ?>
실행 결과는 다음과 같습니다.
red
객체지향 지식에 대해서는 나중에 자세히 설명하겠습니다.
특수 데이터형
PHP에는 서비스나 데이터를 구체적으로 제공하기 위해 사용되는 데이터형이 있는데, 위의 어떤 표준 데이터형에도 속하지 않으므로 특수형 데이터형이라고도 합니다. 주로 NULL 및 리소스 데이터 유형이 포함됩니다.
NULL
NULL은 PHP의 특수 데이터 유형입니다. NULL이라는 값 하나만 있습니다. 이는 null 값(변수에 값이 없음)을 의미합니다. 공백과 다른 의미를 갖는다는 점에 유의해야 합니다.
다음 조건이 충족되면 변수 값은 NULL입니다.
변수에 NULL 값이 할당됩니다.
변수에 값이 할당되기 전의 기본값은 NULL입니다.
<?php $str = 'hello'; $str = NULL; var_dump($str); ?>
실행 결과는 다음과 같습니다.
NULL
Resource도 PHP의 특수 데이터 유형입니다. 주로 데이터베이스 쿼리(Query), 열린 파일 핸들(fopen) 또는 데이터베이스 연결(Database Connection)과 같은 PHP 확장 리소스와 문자 스트림(stream) 및 기타 확장 유형을 설명합니다.
하지만 이 변수 유형은 직접 조작할 수 없으며 특수 기능을 통해서만 사용할 수 있습니다.
위의 상황 중 하나가 발생하는 경우, 예를 들어 fopen 함수를 사용하여 로컬 파일을 열 때 샘플 코드는 다음과 같습니다
<?php header("content-type:text/html;charset=utf-8");//设置编码,解决中文乱码 $file = fopen("test.txt", "rw");//打开test.txt文件 var_dump($file); ?>
실행 결과는 다음과 같습니다.
resource(3) of type (stream)
资源是 PHP 提供的较强特性之一,它可以在 PHP 脚本中做自定义的扩展,类似于C语言结构中的引用,它的所有属性都是私有的,大家可以暂时将其理解为面向对象中的一个实例化对象。有关资源类型我们后面还会详细介绍。
推荐学习:《PHP视频教程》
위 내용은 PHP에는 여러 가지 변수 유형이 있습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!