반응형
연결 배열에 항목 추가
//go through each question
foreach($file_data as $value) {
//separate the string by pipes and place in variables
list($category, $question) = explode('|', $value);
//place in assoc array
$data = array($category => $question);
print_r($data);
}
이것은 데이터의 가치를 대체하기 때문에 작동하지 않습니다.단, 각 루프에 연관값을 추가하려면 어떻게 해야 합니까? $file_data
는 동적 크기를 가진 데이터 배열입니다.
간단하게 할 수 있습니다.
$data += array($category => $question);
php 5.4+에서 실행 중인 경우
$data += [$category => $question];
네가 원하는 것 같아$data[$category] = $question;
또는 카테고리를 질문 배열에 매핑하는 배열을 원하는 경우:
$data = array();
foreach($file_data as $value) {
list($category, $question) = explode('|', $value, 2);
if(!isset($data[$category])) {
$data[$category] = array();
}
$data[$category][] = $question;
}
print_r($data);
루프의 경우 이전:
$data = array();
루프로 이동합니다.
$data[] = array($catagory => $question);
오래된 질문이긴 하지만 다음을 사용할 수 있습니다.
array_push($data, array($category => $question));
이렇게 하면array
전류의 끝에array
또는 어레이의 끝에 하나의 값을 추가하는 것만으로 어레이를 늘릴 수 없는 경우는, 다음을 사용할 수 있습니다.
array_push($data,$question);
2D 어소시에이션 어레이에도 추가할 필요가 있는 경우는, 상기의 회답을 사용해, 다음과 같은 코드를 사용할 수도 있습니다.
$data[$category]["test"] = $question
그런 다음 호출할 수 있습니다(다음 방법으로 결과를 테스트합니다).
echo $data[$category]["test"];
$question을 출력합니다.
언급URL : https://stackoverflow.com/questions/5384847/adding-an-item-to-an-associative-array
반응형
'programing' 카테고리의 다른 글
Larabel에서의 MariaDB JSON 지원 (0) | 2022.10.06 |
---|---|
MySQL에서 한 행을 복사하여 같은 테이블에 삽입할 수 있습니까? (0) | 2022.10.06 |
웹 팩의 "public Path"는 무엇을 합니까? (0) | 2022.10.05 |
C/C++에서 가장 적합한 암호화 라이브러리는 무엇입니까? (0) | 2022.10.05 |
오류 2002(HY000):소켓 '/tmp/mysql'을 통해 로컬 MySQL 서버에 연결할 수 없습니다.Mac Big Sur의 양말' (2) (0) | 2022.10.05 |