2011-07-15 10 views
2

これらの配列項目の間にカンマを追加しようとしていますが、もしimplodeを使用するのであればArray、Arrayを返すだけでした。配列項目の間にコンマを追加する方法PHP - Drupal

function boron_taxonomy_links($node, $vid, $type, $cat) { 
    if (count($node->taxonomy)){ 
    $tags = array(); 
    foreach ($node->taxonomy as $term) { 
     if ($term->vid == $vid){ 
      $tags[] = array('title' => $term->name . ',', 'href' => $type . '/' . $cat . '/' . $term->tid, 'attributes' => array('rel' => 'tag')); 
     } 
} 
    if ($tags){ 
     return theme_links($tags, array('class'=>'links inline')); 
    } 

    } 
} 
+0

ここで十分な情報がありません。コード内に複数の配列があり、テーマが関数の機能をどのようにしているのか分かりません。あなたはどこでcsv文字列を作成しようとしていますか? – dqhendricks

答えて

0

あなたは$tagsに崩壊する呼び出すと、それは、配列内のオブジェクトの文字列表現わたってるしきコンマを入れます。あなたの場合、これらのオブジェクトはPHPが文字列に変換する方法を知らない配列なので、文字列は'Array'です。

$tagsには、必要な形式の文字列を入力する必要があります。どのように表示するかについて言及していないので、私は以下の例を示します。

function TermToString($type, $cat, $term) { 
    $title = $term->name . ','; 
    $href = $type . '/' . $cat . '/' . $term->tid; 
    $attribures = array('rel' => 'tag'); 

    // combine into some string and return 
    return "<a href=\"$href\" title=\"$title\" ref=\"{$attribures['rel']}\">$title</a>"; 
} 

function boron_taxonomy_links($node, $vid, $type, $cat) { 
    if (count($node->taxonomy)) { 
     $tags = array(); 
     foreach ($node->taxonomy as $term) { 
      if ($term->vid == $vid) { 
       $tags[] = TermToString($type, $cat, $term); 
      } 
     } 
     if ($tags) { 
      return theme_links($tags, array('class' => 'links inline')); 
     } 
    } 
} 
関連する問題