PHP OOP에서 배열에 객체 저장하기
다음과 같은 User 클래스가 있다고 가정해 봅시다:
<?php
class User
{
public $name;
public $age;
public function __construct($name, $age)
{
$this->name = $name;
$this->age = $age;
}
}
?>
클래스 파일을 index.php 파일에 연결하겠습니다:
<?php
require_once 'User.php';
?>
클래스의 세 개의 객체를 생성하겠습니다:
<?php
$user1 = new User('john', 21);
$user2 = new User('eric', 22);
$user3 = new User('kyle', 23);
?>
이제 생성한 객체들을 $users 배열에 기록해 보겠습니다:
<?php
$user1 = new User('john', 21);
$user2 = new User('eric', 22);
$user3 = new User('kyle', 23);
$users[] = $user1;
$users[] = $user2;
$users[] = $user3;
var_dump($users);
?>
변수를 제거하여 코드를 줄일 수 있습니다:
<?php
$users[] = new User('john', 21);
$users[] = new User('eric', 22);
$users[] = new User('kyle', 23);
var_dump($users);
?>
객체 배열을 즉시 생성하여 코드를 더욱 줄일 수 있습니다:
<?php
$users = [
new User('john', 21),
new User('eric', 22),
new User('kyle', 23)
];
var_dump($users);
?>
이제 객체 배열을 루프로 순회하며 객체의 속성을 화면에 출력해 보겠습니다:
<?php
foreach ($users as $user) {
echo $user->name . ' ' . $user->age . '<br>';
}
?>
다음 속성을 가진 City 클래스를 만드세요: name, population.
City 클래스의 객체 5개를 생성하고, 데이터를 채운 후 배열에 기록하세요.
생성한 도시 배열을 루프로 순회하며 도시와 그 인구를 화면에 출력하세요.