동영상 강좌는 유튜브 채널 '웹학교'를 이용하시기 바랍니다.
변수는 정보를 저장하여 보관하는 '상자'입니다.
PHP변수 선언
PHP에서 변수는 $기호로 시작하고 그 뒤에 변수 이름이 따라옵니다.
$txt = "안녕하세요?";
$x = 15;
$y = 20.5;
위 PHP명령문을 실행한 후 변수 $txt는 '안녕하세요?'값을 보유하고 변수 x는 값 15, 변수 y는 값 20.5를 보유하게 됩니다.
** 변수에 값을 할당할 때 텍스트면 따옴표로 묶어주고 숫자면 그냥 써줍니다.
** 다른 프로그래밍 언어와 달리, PHP는 변수 선언을 위한 명령이 없습니다. 처음에 그냥 값을 할당하는 순간 생성됩니다.
PHP 변수
변수는 짧은 이름(예: x 또는 y) 또는 보다 기술적인 이름(age, length, total_count)을 가질 수 있습니다.
PHP변수 규칙:
변수 출력
PHP echo문은 종종 데이터를 화면에 출력할 때 사용합니다.
다음 예제는 텍스트와 변수를 화면에 출력하는 방법을 보여줍니다.
<?php
$txt = "365ok.co.kr";
echo "강좌사이트 $txt!";
?>
다음 예제는 위의 예제와 동일한 출력을 보여줍니다.
<?php
$txt = "365ok.co.kr";
echo "강좌사이트 " .$txt . "!";
?>
다음 예제는 두 변수의 합을 출력합니다.
<?php
$x = 15;
$y = 14;
echo $x + $y;
?>
PHP는 느슨한 형식의 언어
위 예제에서 우리는 변수에 어떤 데이터 유형인지 PHP에 알리지 않았습니다.
PHP는 값에 따라 변수를 올바른 데이터 유형으로 자동 변환합니다.
반면에 C, C++ 및 자바와 같은 언어는 프로그래머가 변수를 사용하기 전에 변수의 이름과 유형을 선언해야 합니다.
PHP 변수 범위(Scope)
PHP 변수는 스크립트의 어디에서나 선언할 수 있습니다.
변수의 범위(Scope)는 변수가 참조되거나 사용될 수 있는 스크립트의 부분입니다.
PHP에서 사용하는 세가지 변수 범위:
Global과 local범위
함수 밖에서 선언된 변수는 Global Scope를 가지며 함수 밖에서만 접근할 수 있습니다.
<?php
$x = 5; // global scope
function myFunction() {
echo "<p>함수내 변수 x : $x</p>"; // 이 함수내에서 x를 사용하면 오류가 발생합니다.
}
myFunction();
echo "<p>함수밖 변수 x : $x</p>";
?>
함수내에서 선언된 변수는 Local Scope를 가지며 그 함수 내에서만 접근할 수 있습니다.
<?php
function myFunction() {
$x = 5; // local scope
echo "<p>함수내 변수 x : $x</p>";
}
myFunction();
// 함수 밖에서 x를 사용하면 오류가 발생합니다.
echo "<p>함수밖 변수 x : $x</p>";
?>
** 로컬변수는 선언된 함수에서만 인식되므로 다른 함수에서 같은 이름의 로컬변수를 사용할 수 있습니다.
PHP Global 키워드
global키워드는 함수내에서 전역 변수에 접근할 때 사용합니다.
이렇게 하려면 함수 내부에서 변수 앞에 global키워드를 사용하십시오.
<?php
$x = 5;
$y = 10;
function myFunction() {
global $x, $y;
$y = $x + $y;
}
myFunction();
echo $y; // outputs 15
?>
PHP는 모든 전역 변수를 $GLOBALS[index]배열에 저장합니다.
index는 변수의 이름을 보유합니다.
이 배열은 함수내에서 접근할 수 있으며 전역 변수를 직접 업데이트하는데 사용할 수 있습니다.
위 예제는 다음과 같이 다시 작성할 수 있습니다.
<?php
$x = 5;
$y = 10;
function myFunction() {
$GLOBALS['y'] = $GLOBALS['x'] + $GLOBALS['y'];
}
myFunction();
echo $y; // outputs 15
?>
PHP static 키워드
일반적으로 함수가 완료/실행되면 모든 변수가 삭제됩니다.
그러나 때로 지역변수를 삭제하지 않기를 원합니다. 프로그램의 목적에 따라 그것을 필요로 합니다.
이렇게 하려면 변수를 선언할 때 먼저 static키워드를 사용하십시오.
<?php
function myFunction() {
static $x = 0;
echo $x;
$x++;
}
myFunction(); // outputs : 0
myFunction(); // outputs : 1
myFunction(); // outputs : 2
?>
그러면 함수가 호출될 때마다 해당 변수는 함수가 호출된 마지막 시간부터 포함된 정보를 계속 가지게 됩니다.
** 변수는 여전히 함수의 지역 변수입니다.
그누보드5/영카트5
변수 : /adm/index.php ; 관리자 첫화면 최근 회원, 최근 글 불러오기
global 키워드 : /lib/common.lib.php 외
static 키워드 : /lib/common.lib.php , json.lib.php, shop.lib.php
등록된 댓글이 없습니다.