다차원 배열에서 단일 열 반환
저는 PHP 초보라서 다음 문제에 대한 빠른 해결책이 필요하지만, 어떤 것도 떠오르지 않는 것 같습니다.
이렇게 다차원 배열이 있습니다.
Array
(
[0] => Array
(
[blogTags_id] => 1
[tag_name] => google
[inserted_on] => 2013-05-22 09:51:34
[inserted_by] => 2
)
[1] => Array
(
[blogTags_id] => 2
[tag_name] => technology
[inserted_on] => 2013-05-22 09:51:34
[inserted_by] => 2
)
)
사용하고 싶다implode()값을 포함하는 쉼표로 구분된 문자열을 반환하다tag_name이렇게 키를 누릅니다.
google, technology
상기 기능으로 이 효과를 얻을 수 있습니까?그렇지 않은 경우 다른 해결책을 제안해 주십시오.
매우 간단합니다.
$input = array(
array(
'tag_name' => 'google'
),
array(
'tag_name' => 'technology'
)
);
echo implode(', ', array_map(function ($entry) {
return $entry['tag_name'];
}, $input));
및 php v5.5.0의 새로운 기능:
echo implode(', ', array_column($input, 'tag_name'));
이 질문은 문자열 변환에 관한 것이지만, 로그 파일에 어레이를 간단하게 쓸 수 있는 방법을 원하던 중 우연히 알게 되었습니다.문자열의 정확한 청결을 고려하지 않고 정보만 원하는 경우 다음을 고려할 수 있습니다.
json_encode($array)
array_map 는, 전달된 어레이로 재생할 수 있는 콜백 함수입니다.이거면 될 거야
$str = implode(',', array_map(function($el){ return $el['tag_id']; }, $arr));
join(',', array_map(function (array $tag) { return $tag['tag_name']; }, $array))
아주 간단한 방법
$str;
foreach ($arrays as $arr) {
$str .= $arr["tag_name"] . ",";
}
$str = trim($str, ',');//removes the final comma
"tag_name"과 "blogTags_id"를 관련짓는 경우 (PHP > 5.5)를 사용합니다.
$blogDatas = array_column($your_multi_dim_array, 'tag_name', 'blogTags_id');
echo implode(', ', array_map(function ($k, $v) { return "$k: $v"; }, array_keys($blogDatas), array_values($blogDatas)));
이 상황에서는 값만 필요하기 때문에 incompt($array,'); 가 동작합니다.PHP 5.6에서 나를 위해 작업합니다.
다음과 같은 키와 값을 삽입하는 경우:
blogTags_id: 1
tag_name: google
$toImplode=array();
foreach($array as $key => $value) {
$toImplode[]= "$key: $value".'<br>';
}
$imploded=implode('',$toImplode);
죄송합니다. "다차원 배열에서 데이터 Implode"라는 제목 때문에 잘못 이해했습니다.음, 내 대답은 여전히 어떻게든 대답할 수 있고, 누군가를 도울 수 있기 때문에, 삭제하지 않을 것이다.
언급URL : https://stackoverflow.com/questions/16710800/return-single-column-from-a-multi-dimensional-array
'programing' 카테고리의 다른 글
| MariaDB가 시스템 표준 시간대를 선택하도록 하려면 어떻게 해야 합니까? (0) | 2022.11.02 |
|---|---|
| 열 이름을 가져오기 위한 MySQL 쿼리입니까? (0) | 2022.11.02 |
| PHP를 사용하여 어레이가 비어 있는지 확인하는 방법 (0) | 2022.11.02 |
| Vue.js의 메서드 내에서 입력 포커스 이벤트를 트리거하려면 어떻게 해야 합니까? (0) | 2022.11.02 |
| 속성별로 개체 목록 그룹화 (0) | 2022.11.02 |