카테고리 없음
[PHP] FOREACH를 사용하여 다차원 배열 반복
행복을전해요
2021. 2. 4. 04:49
거의 완료했습니다.
foreach ($bookings as $record) {
echo $record['#BOOKED#']['user_id'];
echo '<br>';
echo $record['#RESERVE#']['user_id'];
echo '<br>';
}
또는 foreach
표시하려는 방법에 따라 두 개로 나뉩니다 .
foreach ($bookings['#BOOKED#'] as $record) {
echo $record['user_id'];
echo '<br>';
}
foreach ($bookings['#RESERVE#'] as $record) {
echo $record['user_id'];
echo '<br>';
}
이것을 얼마나 자주 사용하고 다른 유사한 배열이있는 경우 함수를 사용하고 $bookings['#RESERVE#']
예를 들어 그냥 전달할 수 있습니다 .
다음으로 시도하십시오.
foreach ($bookings as $status => $records) {
foreach ($records as $record) {
echo $record['user_id'];
echo '<br>';
}
}
-------------------다차원 배열을 라이브러리라고 생각합니다. 라이브러리에는 배열의 최상위 레이어와 같이 주제를 분리 할 수있는 여러 영역이 있습니다. 그런 다음 배열의 두 번째 수준과 같이 각 주제를 분류하는 다양한 서적 케이스가 있습니다. 그런 다음 다른 선반 (저자라고합시다)-배열의 3 단계처럼. 데이터를 저장하고 찾는 매우 깔끔한 방법입니다. 작성한 다차원 배열은 다음과 같이 나타납니다.
최상위 수준 :
#BOOKED#
#RESERVE#
2 단계 : (이 수준이 존재하는 이유를 개인적으로 이해하지 못함)
0
3 단계 :
id
user_id
class_id
class_date
manual_booking
booked_date
cancelled_date
배열의 최상위 레벨을 분리하려면 다음과 같은 조건문을 사용할 수 있습니다.
foreach ($bookings as $status => $record) {
if($status=="#BOOKED#") {
// i.e. do something for booked array
echo $record[0]['user_id'];
} else {
// i.e. do something for reserved array
echo $record[0]['user_id'];
}
}
하지만 두 번째 수준을 제거하는 것에 대해 생각해보십시오. 여기에 0 이상의 값이 없으면 필요하지 않은 것 같습니다.
출처
https://stackoverflow.com/questions/22050038