The PHP Practitioner 02 - Arrays / Associative arrays
29 Dec 2019 | Laracast PHPLaracasts - The PHP Practitioner 강의를 듣고 정리한 포스팅 입니다.
1. Understanding Arrays
array를 사용하면 loop에 매우 잘 활용할 수 있음
foreach($names as $name) {
echo $name. ', ';
}
HTML과 결합할 경우 다음과 같이 사용 가능
{}
으로 묶어서 HTML 태그와 함께 쓰는 방법과,<?php foreach() : ?>
+<?php endforeach; ?>
를 사용하는 2가지 방법이 있음.- HTML DOM 구조가 복잡해지며, 다양한 태그로 묶어야하는 경우가 발생한다면 2번째 방법이 더 선호 될 것임.
<?php
$names = [
'harry',
'ron',
'max',
'paul',
];
require 'index.view.php';
<!DOCTYPE HTML>
<html lang="en">
<head>
<meta charset=UTF-8">
<title>Document</title>
<style>
header {
background: #e3e3e3;
padding: 2em;
text-align: center;
}
</style>
</head>
<body>
<ul>
<?php
foreach ($names as $name) {
echo "<li>$name</li>";
}
?>
</ul>
<ul>
<?php foreach ($names as $name) : ?>
<li><?= $name; ?></li>
<?php endforeach; ?>
</ul>
</body>
</html>
2. Associative Arrays
Key:value의 형태로(마치 파이썬의 딕셔너리) 처럼 연관 배열을 만들 수도 있음
- value만 사용하는 경우 :
<?php foreach ($person as $feature) : ?>
- key, value를 사용하는 경우 :
<?php foreach ($person as $key => $value) : ?>
<?php
$person = [
'age' => 31,
'hair' => 'brown',
'career' => 'web developer'
];
require 'index.view.php';
</<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<ul>
<!-- value만 출력하는 경우 -->
<?php foreach($person as $feature) : ?>
<li><?= $feature; ?></li>
<?php endforeach; ?>
<!-- key, value를 출력하는 경우 -->
<?php foreach ($person as $key => $value) : ?>
<li><strong><?= $key; ?></strong> <?= $value; ?></li>
<?php endforeach; ?>
</ul>
</body>
</html>
배열/연관배열에 데이터 추가하기 & 그외 팁
<?php
$person = [
'age' => 31,
'hair' => 'brown',
'career' => 'web developer'
];
$animals = ['dog', 'cat'];
$person['name'] = 'harry'; # 연관배열에 데이터 추가
$animals[] = 'elephant'; # 일반배열에 데이터 추가
//echo $person; // echo는 string을 반환해야함. 배열에는 부적합
var_dump($person); // 배열 출력시 사용 literally dump the values
die(var_dump($person)); // php 코드를 die 시킴.
var_dump($animals);
Comments