PHP-변수 유형

PHP 프로그램 중간에 정보를 저장하는 주요 방법은 변수를 사용하는 것입니다.

다음은 PHP의 변수에 대해 알아야 할 가장 중요한 사항입니다.

  • PHP의 모든 변수는 선행 달러 기호 ($)로 표시됩니다.

  • 변수의 값은 가장 최근에 할당 된 값입니다.

  • 변수는 = 연산자로 할당되며 변수는 왼쪽에 있고 표현식은 오른쪽에 평가됩니다.

  • 변수는 할당 전에 선언 할 수 있지만 반드시 그럴 필요는 없습니다.

  • PHP의 변수에는 내장 유형이 없습니다. 변수는 숫자 또는 문자열을 저장하는 데 사용되는지 여부를 미리 알지 못합니다.

  • 할당되기 전에 사용 된 변수에는 기본값이 있습니다.

  • PHP는 필요할 때 자동으로 유형을 다른 유형으로 변환하는 작업을 수행합니다.

  • PHP 변수는 Perl과 유사합니다.

PHP에는 변수를 구성하는 데 사용하는 총 8 개의 데이터 유형이 있습니다.

  • Integers − 4195와 같이 소수점이없는 정수입니다.

  • Doubles − 3.14159 또는 49.1과 같은 부동 소수점 숫자입니다.

  • Booleans − true 또는 false의 두 가지 가능한 값만 있습니다.

  • NULL − NULL이라는 하나의 값만있는 특수 유형입니다.

  • Strings − 'PHP는 문자열 연산을 지원합니다.'와 같은 일련의 문자입니다.

  • Arrays − 다른 값의 명명되고 색인화 된 모음입니다.

  • Objects − 프로그래머 정의 클래스의 인스턴스로, 클래스에 특정한 다른 종류의 값과 함수를 모두 패키지화 할 수 있습니다.

  • Resources − PHP 외부 리소스 (예 : 데이터베이스 연결)에 대한 참조를 보유하는 특수 변수입니다.

처음 5 개는 단순 유형 이고 다음 2 개 (배열 및 객체)는 복합입니다. 복합 유형은 임의 유형의 다른 임의 값을 패키지 할 수 있지만 단순 유형은 그렇지 않습니다.

이 장에서는 간단한 데이터 유형 만 설명합니다. Array와 Object는 별도로 설명합니다.

정수

4195와 같이 소수점이없는 정수입니다. 가장 단순한 유형입니다. 양수와 음수 모두 단순한 정수에 해당합니다. 정수는 변수에 할당하거나 식에서 사용할 수 있습니다.

$int_var = 12345;
$another_int = -12345 + 12345;

정수는 10 진수 (10 진수), 8 진수 (8 진수) 및 16 진수 (16 진수) 형식 일 수 있습니다. 10 진수 형식이 기본값이고 8 진수는 선행 0으로 지정되며 16 진수는 선행 0x로 지정됩니다.

대부분의 일반적인 플랫폼에서 가장 큰 정수는 (2 ** 31. 1) (또는 2,147,483,647)이고 가장 작은 (가장 음의) 정수는입니다. (2 ** 31. 1) (또는 .2,147,483,647).

더블스

3.14159 또는 49.1을 좋아합니다. 기본적으로 필요한 최소 소수 자릿수로 두 배로 인쇄합니다. 예를 들어, 코드-

<?php
   $many = 2.2888800;
   $many_2 = 2.2111200;
   $few = $many + $many_2;
   
   print("$many + $many_2 = $few <br>");
?>

다음 브라우저 출력을 생성합니다.

2.28888 + 2.21112 = 4.5

부울

true 또는 false의 두 가지 가능한 값만 있습니다. PHP는 특히 불리언으로 사용하기위한 몇 가지 상수를 제공합니다 : TRUE와 FALSE, 이렇게 사용할 수 있습니다.

if (TRUE)
   print("This will always print<br>");

else
   print("This will never print<br>");

다른 유형을 부울로 해석

다음은 이미 부울 유형이 아닌 값의 "진실"을 결정하는 규칙입니다.

  • 값이 숫자이면 정확히 0이면 false이고 그렇지 않으면 true입니다.

  • 값이 문자열 인 경우 문자열이 비어 있거나 (0 개의 문자가 있음) 문자열 "0"이면 false이고 그렇지 않으면 true입니다.

  • NULL 유형의 값은 항상 false입니다.

  • 값이 배열 인 경우 다른 값이 포함되어 있지 않으면 false이고 그렇지 않으면 true입니다. 개체의 경우 값을 포함한다는 것은 값이 할당 된 멤버 변수가 있음을 의미합니다.

  • 유효한 리소스는 true입니다 (성공할 때 리소스를 반환하는 일부 함수는 실패하면 FALSE를 반환합니다).

  • double을 Booleans로 사용하지 마십시오.

다음 각 변수에는 부울 컨텍스트에서 사용될 때 이름에 포함 된 진리 값이 있습니다.

$true_num = 3 + 0.14159;
$true_str = "Tried and true"
$true_array[49] = "An array element";
$false_array = array();
$false_null = NULL;
$false_num = 999 - 999;
$false_str = "";

없는

NULL은 NULL이라는 하나의 값만있는 특수 유형입니다. 변수에 NULL 값을 지정하려면 다음과 같이 지정하면됩니다.

$my_var = NULL;

특수 상수 NULL은 관례 상 대문자로 표시되지만 실제로는 대소 문자를 구분하지 않습니다. 당신은 그냥 타이핑했을 수 있습니다-

$my_var = null;

NULL로 할당 된 변수에는 다음과 같은 속성이 있습니다.

  • 부울 컨텍스트에서 FALSE로 평가됩니다.

  • IsSet () 함수로 테스트하면 FALSE를 반환합니다.

문자열

"PHP는 문자열 연산을 지원합니다"와 같은 일련의 문자입니다. 다음은 유효한 문자열 예입니다.

$string_1 = "This is a string in double quotes";
$string_2 = 'This is a somewhat longer, singly quoted string';
$string_39 = "This string has thirty-nine characters";
$string_0 = ""; // a string with zero characters

작은 따옴표로 묶인 문자열은 거의 문자 그대로 처리되는 반면, 이중으로 인용 된 문자열은 변수를 값으로 대체하고 특정 문자 시퀀스를 특별히 해석합니다.

<?php
   $variable = "name";
   $literally = 'My $variable will not print!';
   
   print($literally);
   print "<br>";
   
   $literally = "My $variable will print!";
   print($literally);
?>

이것은 다음 결과를 생성합니다-

My $variable will not print!
My name will print

문자열 길이에는 인위적인 제한이 없습니다. 사용 가능한 메모리 범위 내에서 임의의 긴 문자열을 만들 수 있어야합니다.

큰 따옴표로 구분 된 문자열 ( "this"에서와 같이)은 PHP에 의해 다음 두 가지 방법으로 전처리됩니다.

  • 백 슬래시 (\)로 시작하는 특정 문자 시퀀스는 특수 문자로 대체됩니다.

  • $로 시작하는 변수 이름은 해당 값의 문자열 표현으로 대체됩니다.

이스케이프 시퀀스 대체는 다음과 같습니다.

  • \ n은 개행 문자로 대체됩니다.
  • \ r은 캐리지 리턴 문자로 대체됩니다.
  • \ t는 탭 문자로 대체됩니다.
  • \ $는 달러 기호 자체 ($)로 대체됩니다.
  • \ "는 단일 큰 따옴표 (")로 대체됩니다.
  • \\는 단일 백 슬래시 (\)로 대체됩니다.

여기 문서

여기 문서를 사용하여 단일 문자열 변수에 여러 줄을 할당 할 수 있습니다.

<?php
   $channel =<<<_XML_
   
   <channel>
      <title>What's For Dinner</title>
      <link>http://menu.example.com/ </link>
      <description>Choose what to eat tonight.</description>
   </channel>
   _XML_;
   
   echo <<<END
   This uses the "here document" syntax to output multiple lines with variable 
   interpolation. Note that the here document terminator must appear on a line with 
   just a semicolon. no extra whitespace!
   
END; print $channel; ?>

이것은 다음 결과를 생성합니다-

This uses the "here document" syntax to output
multiple lines with variable interpolation. Note
that the here document terminator must appear on a
line with just a semicolon. no extra whitespace!

<channel>
<title>What's For Dinner<title>
<link>http://menu.example.com/<link>
<description>Choose what to eat tonight.</description>

가변 범위

범위는 변수가 선언 된 프로그램에 대해 갖는 가용성 범위로 정의 할 수 있습니다. PHP 변수는 네 가지 범위 유형 중 하나 일 수 있습니다.

  • 지역 변수

  • 기능 매개 변수

  • 전역 변수

  • 정적 변수

변수 이름 지정

변수 이름 지정 규칙은 다음과 같습니다.

  • 변수 이름은 문자 또는 밑줄 문자로 시작해야합니다.

  • 변수 이름은 숫자, 문자, 밑줄로 구성 될 수 있지만 +,-, %, (,)와 같은 문자는 사용할 수 없습니다. & 등

변수에는 크기 제한이 없습니다.