[php] foreach 루프의 값을 배열에 저장하는 방법은 무엇입니까?

foreach 루프의 값을 배열에 저장해야하는데 도움이 필요합니다.

아래 코드는 작동하지 않고 마지막 값만 저장하고 시도 $items .= ...,했지만 트릭을 수행하지 않고 있으며 도움을 주시면 감사하겠습니다.

foreach($group_membership as $i => $username) {
    $items = array($username);
}

print_r($items);



답변

$items루프 외부 에서 배열을 선언하고 배열 $items[]에 항목을 추가하는 데 사용 합니다.

$items = array();
foreach($group_membership as $username) {
 $items[] = $username;
}

print_r($items);


답변

사용하다

$items[] = $username;


답변

시험

$items = array_values ( $group_membership );


답변

<?php
$items = array();
$count = 0;
foreach($group_membership as $i => $username) {
 $items[$count++] = $username;
}
print_r($items);
?>


답변

내 대답을 시도 할 수 있습니다.

당신은 이것을 썼습니다 :

<?php
foreach($group_membership as $i => $username) {
    $items = array($username);
}

print_r($items);
?>

그리고 귀하의 경우에는 이렇게 할 것입니다.

<?php
$items = array();
foreach ($group_membership as $username) { // If you need the pointer (but I don't think) you have to add '$i => ' before $username
    $items[] = $username;
} ?>

질문에서 알 수 있듯이 특정 그룹에있는 사용자 이름 배열이 필요한 것 같습니다.이 경우 간단한 while 루프가있는 좋은 SQL 쿼리를 선호합니다.)

<?php
$query = "SELECT `username` FROM group_membership AS gm LEFT JOIN users AS u ON gm.`idUser` = u.`idUser`";
$result = mysql_query($query);
while ($record = mysql_fetch_array($result)) { \
    $items[] = $username;
}
?>

while더 빠르지 만 마지막 예는 관찰의 결과 일뿐입니다. 🙂


답변

$items=array();
$j=0;

foreach($group_membership as $i => $username){
    $items[$j++]=$username;
}

위의 코드를 시도해보십시오.


답변

너무 많은 오타를 저장하기 위해 :

foreach($group_membership as $username){
        $username->items = array(additional array to add);
    }
    print_r($group_membership);