일자 : 24-2 13주차 1차시 (2)
count() 함수는 배열의 길이(즉, 배열의 요소 개수)를 반환하는 함수이다.<?php
$cars = array("Volvo", "BMW", "Toyota");
echo count($cars);
?>
<!DOCTYPE html>
<html>
<body>
<?php
// 배열 선언: $cars 배열에는 3개의 자동차 브랜드가 저장된다.
$cars = array("Volvo", "BMW", "Toyota");
// 배열 요소들을 사용하여 문자열을 연결하여 출력
echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";
// 출력: "I like Volvo, BMW and Toyota."
?>
</body>
</html>
for 문을 사용하여 인덱스 배열의 각 요소에 접근하여 출력할 수 있다.<!DOCTYPE html>
<html>
<body>
<?php
// 배열 선언: $cars 배열에는 3개의 자동차 브랜드가 저장된다.
$cars = array("Volvo", "BMW", "Toyota");
// 배열의 길이를 구하는 함수 count()를 사용하여 배열의 요소 개수를 저장
$arrlength = count($cars);
// 배열의 각 요소를 출력하기 위해 for문 사용
for($x = 0; $x < $arrlength; $x++) {
// 배열의 각 요소를 출력
echo $cars[$x];
// 각 요소마다 줄바꿈
echo "<br>";
}
?>
</body>
</html>
$age = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
$age['Peter'] = "35";
$age['Ben'] = "37";
$age['Joe'] = "43";
<!DOCTYPE html>
<html>
<body>
<?php
// 연관 배열 선언: 사람 이름을 키로, 나이를 값으로 저장
$age = array("Peter" => "35", "Ben" => "37", "Joe" => "43");
// 'Peter' 키의 값을 가져와서 출력
echo "Peter is " . $age['Peter'] . " years old.";
?>
</body>
</html>
<!DOCTYPE html>
<html>
<body>
<?php
// 연관 배열 선언: 사람 이름을 키로, 나이를 값으로 저장
$age = array("Peter" => "35", "Ben" => "37", "Joe" => "43");
// foreach 문을 사용하여 배열을 순회
foreach ($age as $x => $x_value) {
// 배열의 키와 값을 출력
echo "Key=" . $x . ", Value=" . $x_value;
// 각 항목마다 줄바꿈
echo "<br>";
}
?>
</body>
</html>
$cars = array
(
array("Volvo",22,18),
array("BMW",15,13),
array("Saab",5,2),
array("Land Rover",17,15)
);
<!DOCTYPE html>
<html>
<body>
<?php
// 2차원 배열 선언: 각 자동차 모델과 그 모델의 재고 및 판매량 정보를 저장
$cars = array(
array("Volvo", 22, 18), // 'Volvo' 모델, 재고 22, 판매 18
array("BMW", 15, 13), // 'BMW' 모델, 재고 15, 판매 13
array("Saab", 5, 2), // 'Saab' 모델, 재고 5, 판매 2
array("Land Rover", 17, 15) // 'Land Rover' 모델, 재고 17, 판매 15
);
// 각 모델의 정보를 출력
echo $cars[0][0] . ": In stock: " . $cars[0][1] . ", sold: " . $cars[0][2] . ".<br>"; // 'Volvo' 출력
echo $cars[1][0] . ": In stock: " . $cars[1][1] . ", sold: " . $cars[1][2] . ".<br>"; // 'BMW' 출력
echo $cars[2][0] . ": In stock: " . $cars[2][1] . ", sold: " . $cars[2][2] . ".<br>"; // 'Saab' 출력
echo $cars[3][0] . ": In stock: " . $cars[3][1] . ", sold: " . $cars[3][2] . ".<br>"; // 'Land Rover' 출력
?>
</body>
</html>
<!DOCTYPE html>
<html>
<body>
<?php
// 2차원 배열 선언: 각 자동차 모델과 그 모델의 재고 및 판매량 정보를 저장
$cars = array (
array("Volvo", 22, 18), // 'Volvo' 모델, 재고 22, 판매 18
array("BMW", 15, 13), // 'BMW' 모델, 재고 15, 판매 13
array("Saab", 5, 2), // 'Saab' 모델, 재고 5, 판매 2
array("Land Rover", 17, 15) // 'Land Rover' 모델, 재고 17, 판매 15
);
// 외부 루프: $row는 0부터 3까지, 즉 4개의 자동차 모델에 대해 반복
for ($row = 0; $row < 4; $row++) {
// 각 행에 대해 "Row number"를 출력
echo "<p><b>Row number $row</b></p>";
echo "<ul>"; // 목록 시작
// 내부 루프: $col는 0부터 2까지, 즉 각 모델의 3개 항목(이름, 재고, 판매)에 대해 반복
for ($col = 0; $col < 3; $col++) {
// 각 항목을 리스트 항목으로 출력
echo "<li>".$cars[$row][$col]."</li>";
}
echo "</ul>"; // 목록 종료
}
?>
</body>
</html>
$GLOBALS
GLOBALS 배열을 사용하여 전역 변수를 수정하거나 참조할 수 있다.$GLOBALS['variable']$_SERVER
$_SERVER['HTTP_USER_AGENT']$_REQUEST
$_GET, $_POST, $_COOKIE의 데이터를 모두 합친 배열이다. 사용자가 요청한 데이터를 포함하고 있다.$_REQUEST['username']$_POST
$_POST['username']$_GET
$_GET['id']$_FILES
$_FILES['file']['name']$_ENV
$_ENV['PATH']$_COOKIE
$_COOKIE['user']$_SESSION
$_SESSION['user_id']$GLOBALS: $GLOBALS[index]$GLOBALS 배열은 전역 변수들을 저장하는 배열이다. $GLOBALS[index]에서 index는 전역 변수의 이름을 담고 있으며, 이를 통해 전역 변수를 함수 내부에서도 접근하고 수정할 수 있다.<!DOCTYPE html>
<html>
<body>
<?php
// 전역 변수 선언
$x = 75;
$y = 25;
// addition 함수 정의
function addition()
{
// $GLOBALS 배열을 사용하여 전역 변수 x와 y에 접근하고, 그 합을 z에 저장
$GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}
// addition 함수 호출
addition();
// 전역 변수 z의 값을 출력
echo $z;
?>
</body>
</html>
addition 함수는 $GLOBALS 배열을 사용해 전역 변수 $x와 $y를 접근하여 합을 $z에 저장한다. 그 후, 전역 변수 $z의 값을 출력한다.$_SERVER$_SERVER는 서버의 정보, 요청 헤더, 스크립트의 경로 등 서버 환경과 관련된 정보를 담고 있는 배열이다.<?php
// PHP_SELF: 현재 실행 중인 스크립트 파일의 경로를 출력
echo $_SERVER['PHP_SELF'];
echo "<br>";
// SERVER_NAME: 서버의 호스트 이름을 출력
echo $_SERVER['SERVER_NAME'];
echo "<br>";
// HTTP_HOST: 요청을 보낸 호스트의 이름(도메인)을 출력
echo $_SERVER['HTTP_HOST'];
echo "<br>";
// HTTP_REFERER: 현재 페이지를 요청한 이전 페이지의 URL을 출력
echo $_SERVER['HTTP_REFERER'];
echo "<br>";
// HTTP_USER_AGENT: 클라이언트 브라우저의 정보(사용자 에이전트)를 출력
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br>";
// SCRIPT_NAME: 실행 중인 스크립트의 경로를 출력
echo $_SERVER['SCRIPT_NAME'];
?>
$_SERVER 배열을 사용하여 다양한 서버 및 요청 정보를 출력한다.$_SERVER['PHP_SELF']: 현재 실행 중인 스크립트의 경로를 반환한다.$_SERVER['SERVER_NAME']: 서버의 호스트 이름을 반환한다.$_SERVER['HTTP_HOST']: 요청을 보낸 호스트의 도메인 이름을 반환한다.$_SERVER['HTTP_REFERER']: 이전 페이지의 URL을 반환한다.$_SERVER['HTTP_USER_AGENT']: 클라이언트의 브라우저 정보(사용자 에이전트)를 반환한다.$_SERVER['SCRIPT_NAME']: 실행 중인 PHP 파일의 경로를 반환한다.<!DOCTYPE html>
<html>
<body>
<?php
// 현재 실행 중인 PHP 파일의 경로를 출력
echo $_SERVER['PHP_SELF'];
echo "<br>";
// 서버의 호스트 이름을 출력
echo $_SERVER['SERVER_NAME'];
echo "<br>";
// 요청을 보낸 호스트의 이름(도메인)을 출력
echo $_SERVER['HTTP_HOST'];
echo "<br>";
// 현재 페이지를 요청한 이전 페이지의 URL을 출력
echo $_SERVER['HTTP_REFERER'];
echo "<br>";
// 클라이언트 브라우저의 정보(사용자 에이전트)를 출력
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br>";
// 실행 중인 스크립트의 경로를 출력
echo $_SERVER['SCRIPT_NAME'];
?>
</body>
</html>
count() 함수$cars = array("Volvo", "BMW", "Toyota");
echo $cars[0]; // "Volvo"
for 문을 사용해 배열을 순회하여 각 요소를 출력.$cars = array("Volvo", "BMW", "Toyota");
for ($x = 0; $x < count($cars); $x++) {
echo $cars[$x];
}
$age = array("Peter" => "35", "Ben" => "37", "Joe" => "43");
$age = array("Peter" => "35", "Ben" => "37", "Joe" => "43");
echo "Peter is " . $age['Peter'] . " years old.";
foreach 문을 사용하여 배열 순회.foreach ($age as $name => $age_value) {
echo "Key=" . $name . ", Value=" . $age_value;
}
$cars = array(
array("Volvo", 22, 18),
array("BMW", 15, 13),
array("Saab", 5, 2)
);
echo $cars[0][0] . ": In stock: " . $cars[0][1] . ", sold: " . $cars[0][2];
for 문을 사용하여 2차원 배열 출력.for ($row = 0; $row < 4; $row++) {
for ($col = 0; $col < 3; $col++) {
echo $cars[$row][$col];
}
}
$GLOBALS: 전역 변수를 접근할 수 있는 배열.$_SERVER: 서버 정보, 요청 헤더, 스크립트 경로 등의 정보.$_REQUEST: $_GET, $_POST, $_COOKIE 데이터를 포함한 배열.$_POST: HTTP POST 방식으로 전송된 데이터를 담은 배열.$_GET: URL 쿼리 스트링으로 전송된 데이터를 담은 배열.$_FILES: 업로드된 파일의 정보를 담은 배열.$_ENV: 서버 환경 변수와 시스템 정보를 담은 배열.$_COOKIE: 클라이언트 측 쿠키 데이터를 담은 배열.$_SESSION: 세션 데이터를 저장하고 관리하는 배열.$GLOBALS$GLOBALS[index]를 통해 전역 변수를 함수 내에서 접근하거나 수정할 수 있음.$_SERVER$_SERVER['PHP_SELF'], $_SERVER['SERVER_NAME'], $_SERVER['HTTP_USER_AGENT'] 등이 있다.