차례:
비디오: WEB2-PHP-5.PHP의 데이터 타입 2024
변수는 다른 유형의 데이터를 저장할 수 있고 다른 유형의 데이터는 다른 일을 할 수 있습니다. 예를 들어 값이 숫자 (1 + 2) 인 변수를 추가 할 수 있지만 값이 문자 (a + b) 인 변수를 추가하는 것은 의미가 없습니다.
PHP 변수에 다음과 같은 간단한 유형의 데이터를 저장할 수 있습니다.
- 정수: -43, 0, 1, 27 또는 5438과 같은 정수 (분수 없음). 정수 범위 허용되는 허용 범위는 운영 체제에 따라 다르지만 일반적으로 일반적으로 20 억에서 최대 20 억까지의 숫자를 사용할 수 있습니다.
- 부동 소수점 수: 5.24 또는 123. 456789와 같이 소수점 이하 자릿수를 포함하는 숫자 (일반적으로 정수가 아님). 이는 종종 실수 또는 플로트.
- 문자열: 일련의 단일 문자 (예: hello ). 문자열의 길이에는 실제 제한이 없습니다.
- 부울: TRUE 또는 FALSE 값입니다.
부울 데이터 유형은 TRUE 또는 FALSE의 두 가지 상태를 나타냅니다. 부울 값은 주로 조건문에서 사용할 조건을 비교하는 데 사용됩니다. 예를 들어, PHP는 $ a> $ b 와 같은 표현식을 평가하며 결과는 TRUE 또는 FALSE입니다.
PHP는 다음 값을 고려합니다. FALSE:
- 문자열 FALSE (대문자 또는 소문자 일 수 있음)
- 정수 0
- 한 문자 스트링 0
- 상수 NULL
- 부울 변수의 다른 모든 값은 참으로 간주됩니다. 부울 변수를 반향하면 값 FALSE는 빈 문자열로 표시됩니다. 값 TRUE는 1로 나타냅니다. 함수는 함수가 성공했는지 실패했는지를 테스트 할 수있는 부울 변수를 리턴합니다.
- 데이터 유형 지정
대부분의 다른 언어는 변수를 사용하기 전에 변수를 초기화해야만 데이터 유형을 지정할 수 있지만 PHP는 더 비공식적입니다. 변수에 어떤 데이터 유형이 있는지 PHP에 알릴 필요는 없습니다. PHP는 데이터를 변수에 할당 할 때 데이터를 평가 한 다음 적절한 유형으로 저장합니다. 일반적으로 이것은 도움이됩니다. PHP는 데이터 유형을 매우 정확하게 추측합니다.
PHP는 변환이 필요할 때 데이터도 변환합니다. 예를 들어, 다음 문장이있는 경우 PHP는 문제없이 데이터 유형을 변환합니다.
$ firstNumber = 1; # PHP는 그것을 정수로 저장합니다.
$ secondNumber = 1. 1; # PHP는 그것을 float으로 저장합니다.
$ sum = $ firstNumber + $ secondNumber;
기술적으로, 추가 할 데이터가 다른 유형이므로 세 번째 구문을 사용할 수 없습니다. 그러나 PHP는 정수를 float로 변환하여 더하기가 원활하게 진행됩니다.이것은 자동으로 보이지 않게 발생하며 매우 유용합니다.
타입 캐스팅
드문 경우이지만 PHP는 데이터를 저장할 때 추측합니다. 변수를 사용하여 무언가를해야 할 수도 있으며, 데이터가 잘못된 유형이기 때문에 PHP가 허용하지 않습니다. 이 경우, PHP가 스스로 결정할 수있는 방법이 아닌, PHP가 데이터를 저장하는 방법을 지정할 수 있습니다. 이것을
형 주조라고합니다.
특정 유형을 지정하려면 다음 중 하나와 같은 명령문을 사용하십시오. $ newint = (int) $ var1; $ newfloat = (float) $ var1;
$ newstring = (string) $ var1;
등호 오른쪽의 변수 값은 왼쪽의 변수에 지정된 유형으로 저장됩니다. 따라서
$ var1
의 값은 (int) 에 지정된 $ newint 의 정수로 저장됩니다. 타입 캐스트를 할 때주의하십시오. 때로는 예기치 않은 결과가 발생할 수 있습니다. 예를 들어, float를 정수로 형변환하면 소수 자리가 없어집니다. 이렇게하려면 PHP는 부동 소수점을 0으로 반올림합니다. 예를 들어, $ number = 1. 8
이고이를 정수로 캐스팅합니다. - $ newnumber = (int) $ number $ newnumber 는 1과 같습니다. 다음과 같은 문을 사용하여 변수의 데이터 유형을 확인할 수 있습니다. var_dump ($ myvariable);
예를 들어, 다음 문은
$ checkvar
의 데이터 유형을 확인합니다. var_dump ($ checkvar); 이 문장의 출력은
int (27)
이며, 이는 $ checkvar 에 정수 27이 들어 있음을 나타냅니다.