게시판 만들기

박선규's avatar
Jan 23, 2025
게시판 만들기

Board_PHP
p4rkskUpdated Dec 30, 2024

 
오류 모음
  1. 배열 요소를 직접 참조하여 수정하기foreach 루프에 참조(&)를 사용하여 원본 배열을 직접 수정합니다.
php 코드 복사 public function select_board() { $query = $this->db->query("SELECT id, title, author, write_date FROM board"); $result = $query->result_array(); // 일자까지만 나오게 날짜 포맷 foreach ($result as &$row) { $row['write_date'] = date('Y-m-d', strtotime($row['write_date'])); } unset($row); // 참조 해제 return $result; }
 
 

array_map 함수란?

array_mapPHP의 내장 함수로, 배열의 각 요소를 콜백 함수로 처리한 결과를 새로운 배열로 반환합니다. 즉, 배열의 모든 요소에 대해 특정 작업을 수행하고, 그 결과를 모아 새 배열로 반환하는 데 사용됩니다.

문법

array_map(callable $callback, array $array1, array ...$arrays): array
  • $callback: 배열의 각 요소를 처리할 사용자 정의 함수(콜백 함수). 이 함수는 각 배열 요소를 입력받아 새로운 값을 반환합니다.
  • $array1: 처리 대상 배열.
  • $arrays: 여러 배열을 동시에 전달할 수도 있습니다. 이 경우, 각 배열의 동일한 인덱스 값들이 콜백 함수로 전달됩니다.
  • 반환값: 콜백 함수 처리 결과로 구성된 새로운 배열.

 

예제

1. 배열 요소를 변환

배열의 각 요소를 제곱하는 예제:
$numbers = [1, 2, 3, 4, 5]; $squaredNumbers = array_map(function($number) { return $number * $number; }, $numbers); print_r($squaredNumbers); // 출력: [1, 4, 9, 16, 25]

2. 날짜 포맷 변경

배열의 날짜를 특정 형식으로 변경:
$dates = [ ['id' => 1, 'write_date' => '2024-12-25 14:00:00'], ['id' => 2, 'write_date' => '2024-12-26 16:30:00'] ]; $formattedDates = array_map(function($row) { $row['write_date'] = date('Y-m-d', strtotime($row['write_date'])); return $row; }, $dates); print_r($formattedDates); // 출력: // [ // ['id' => 1, 'write_date' => '2024-12-25'], // ['id' => 2, 'write_date' => '2024-12-26'] // ]
 
Share article

p4rksk