복붙노트

다차원 배열의 데이터 임플리트

PHP

다차원 배열의 데이터 임플리트

저는 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

이 기능으로이 효과를 얻을 수 있습니까? 그렇지 않다면 대체 솔루션을 제안하십시오.

해결법

  1. ==============================

    1.아주 간단합니다 :

    아주 간단합니다 :

    $input = array(
      array(
        'tag_name' => 'google'
      ),
      array(
        'tag_name' => 'technology'
      )
    );
    
    echo implode(', ', array_map(function ($entry) {
      return $entry['tag_name'];
    }, $input));
    

    http://3v4l.org/ltBZ0

    php v5.5.0의 새로운 기능인 array_column :

    echo implode(', ', array_column($input, 'tag_name'));
    
  2. ==============================

    2.

    join(',', array_map(function (array $tag) { return $tag['tag_name']; }, $array))
    
  3. ==============================

    3.array_map은 전달 된 배열로 재생할 수있는 콜백 함수입니다. 이게 효과가있다.

    array_map은 전달 된 배열로 재생할 수있는 콜백 함수입니다. 이게 효과가있다.

    $str = implode(',', array_map(function($el){ return $el['tag_id']; }, $arr));
    
  4. ==============================

    4.이걸 아주 간단하게 간다.

    이걸 아주 간단하게 간다.

    $str;
    foreach ($arrays as $arr) {
    $str .= $arr["tag_name"] . ",";
    }
    $str = trim($str, ',');//removes the final comma 
    
  5. ==============================

    5.이 질문은 문자열 변환과 관련되어 있지만 배열을 내 로그 파일에 작성하는 쉬운 방법을 원하면서이 문제가 발생했습니다. 정보를 원한다면 문자열의 정확한 청결을 고려하지 않아도됩니다.

    이 질문은 문자열 변환과 관련되어 있지만 배열을 내 로그 파일에 작성하는 쉬운 방법을 원하면서이 문제가 발생했습니다. 정보를 원한다면 문자열의 정확한 청결을 고려하지 않아도됩니다.

    json_encode($array)
    
  6. ==============================

    6."tag_name"과 "blogTags_id"를 연관 시키려면 다음을 사용하십시오 : (PHP> 5.5)

    "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)));
    
  7. ==============================

    7.이 상황에서 implode ($ array, ','); 값만 원하기 때문에 효과가 있습니다. PHP 5.6에서 저에게 도움이되었습니다.

    이 상황에서 implode ($ 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"때문에 잘못 이해합니다. 글쎄, 내 대답은 여전히 ​​어떻게 든 대답, 누군가를 도울 수 있습니다, 그래서 그것을 삭제하지 않습니다.

  8. from https://stackoverflow.com/questions/16710800/implode-data-from-a-multi-dimensional-array by cc-by-sa and MIT license