on
PHP 변수
PHP 변수
PHP 코드 영역
PHP 파서가 PHP 코드를 인식하기 위한 시작과 끝 표기
1. PHP 권장 스타일 : -추천 2. HTML 스크립트 스타일 : ... -추천 3. SGML 스타일 : - 비추 4. ASP 스타일 : <% ... %> - 비추
특징
C언어처럼 PHP 명령문도 마지막은 세미콜론(;)으로 끝남. PHP코드가 종료되면 자동으로 세미콜론을 적용해줌 PHP코드 영역 종료 태그도 생략 가능.
주석
// 한줄주석 # 한줄주석 /*주석문*/
echo() 함수
"; echo ("인수를 전달할 때 괄호를 사용해도 괜찮습니다!"); ECHO "echo() 함수의 키워드는 대소문자를 구분하지 않습니다!"; echo "첫 번째 인수, ", "두 번째 인수"; //echo("첫 번째 인수, ", "두 번째 인수"); // 오류 발생 ?>
변수선언
$변수이름 = 초깃값;
PHP에서 변수의 타입은 해당 변수에 대입하는 값에 따라 자동으로 결정됨.
영문 대소문자, 숫자, 언더스코어만 가능
문자열 내의 변수 치환
echo "변수 \$var에 저장된 값은 {$var}입니다.";
변수이름을 {}로 감싸기
변수 자동 초기화
타입 기본값 boolean FALSE Integer 0 float 0.0 string 빈 문자열 array 빈 배열
전역변수 접근
함수 밖에서 선언된 변수는 함수 밖에서만 바로 접근할 수 있다.
함수 안에서 접근하고자 할때는 global 키워드를 함께 사용해야 한다.
PHP는 모든 전역 변수를 $GLOBALS 배열에 저장한다.
$GLOVALS['var']와 같이 접근할때는 global 키워드를 사용하지 않아도 된다.
슈퍼글로벌
PHP는 미리 정의된 전역변수인 슈퍼 글로벌을 제공한다.
특별한 선언없이 스크립트 내의 어디에서라도 바로 사용할 수 있다.
1. $GLOBALS 2. $_SERVER 3. $_GET 4. $_POST 5. $_FILES 6. $_COOKIE 7. $_SESSION 8. $_REQUEST 9. $_ENV
정적변수
함수내부에서 static 키워드로 선언한 변수
함수 내부에서 선언된 정적변수는 함수 호출이 종료되더라도 메모리상에서 사리지지 않는다.
하지만 지역변수처럼 함수 내부에서만 접근 할 수 있다.
function counter() { static $count = 0; echo "함수 내부에서 호출한 static 변수 count의 값은 {$count}입니다."; $count++; } counter(); counter(); counter();
상수
스크립트가 실행되는 동안 그 데이터를 변경하거나 해제할 수 없다.
define(상수이름, 상숫값, 대소문자구분여부)
대소문자구분여부 false(구분함, 디폴트), true(구분안함)
마법상수
어떤 스크립트에서도 사용할 수 있는 미리 정의된 다양한 상수를 제공한다.
대소문자를 구분하지 않는다.
__LINE__ : 파일의 현재 줄 번호를 반환 __FILE__ : 파일의 전체 경로와 이름을 반환 __DIR__ : 파일의 디렉토리를 반환 __FUNCTION__ : 함수이름을 반환 __CLASS__ : 클래스 이름을 반환 __TRAIT__ : 트레이트의 이름을 반환 __METHOD__ : 메소드 이름 반환 __NAMESPACE__ : 현재 네임스페이스의 이름을 반환
기본타입
boolean : true false(0, 0.0, "0", "", 빈배열, NULL) integer float string array object resource NULL
배열
PHP에서 배열은 한쌍의 키와 값으로 이루어진 맵으로 구성되는 순서가 있는 집합을 의미한다.
키값 : 정수와 문자열만 가능 (불리언:1,0으로변환됨) (실수: 소수부분제거,정수타입변환) (NULL : ""로타입변환)(유효한 숫자로만 이루어진 문자열은 정수나 실수로 자동 타입 변환됨)
값은 키값으로 여러번 맵을 선언하면 덮어 씌워진다.
$arr = array( 1 => "첫 번째 값", // PHP의 배열에서 키값의 1과 "1"은 같은 값을 나타냄. "1" => "두 번째 값", // 같은 키값을 사용하여 두 번 선언했기 때문에 나중에 선언된 "두 번째 값"만 남게됨. 10 => "세 번째 값", -10 => "네 번째 값" );
객체(object)
객체는 클래스의 인스턴스를 저장하기 위한 타입
프로퍼티와 메소드를 포함한다.
class Lecture{ function Lecture(){ $this->lec_01 = "PHP"; $this->lec_02 = "MySQL"; } } $var = new Lecture; echo $var->lec_01;
리소스
PHP 외부에 존재하는 외부 자원을 의미한다.
이러한 리소스는 데이터베이스 함수 등에서 데이터베이스 연결 등을 반환할 때 사용된다.
unset()
인수로 전달받은 변수를 메모리에서 삭제하는 함수
가변 변수
PHP에서는 변수의 타입 뿐만 아니라 변수의 이름까지 동적으로 바꿀 수 있다.
해당 변수의 값을 또 다른 변수의 이름으로 취급한다.
$PHP = "HTML"; $HTML = "CSS"; $CSS = "JavaScript"; echo $PHP; // HTML echo $$PHP; // $HTML -> CSS echo $$$PHP; // $$HTML -> $CSS -> JavaScript
참조
from http://rlawldud335.tistory.com/3 by ccl(A) rewrite - 2021-12-28 15:27:11