2011-09-30 6 views
0

나는이 코드에서 각 항목의 끝에 쉼표를 추가하여 목록에서 분리합니다 형식으로, 나는 마지막 쉼표를 제거하여 추가시 전파하지 않거나 목록의 마지막 쉼표를 제거합니다.문자열 (PHP/Wordpress)에서 마지막 쉼표를 제거하십시오.

$terms = get_the_terms($post->ID, 'clients'); 
if ($terms && ! is_wp_error($terms)) : 
$clients_list = array(); 
foreach ($terms as $term) { 
    $clients_list[] = $term->name; 
} 
$clients = join(", ", $clients_list); 
$catTags .= "$clients, "; 
endif; 

저는 다음을 시도해 보았습니다.

<em><?php $string = $catTags; 
    echo preg_replace("/\,$/","",$catTags); ?></em> 
+0

[PHP에서 마지막 쉼표를 제거 하시겠습니까?] (http://stackoverflow.com/questions/7376171/removing-last-comma-in-php) – geoffspear

답변

5

당신은 간단하게 수행 할 수 있습니다

나는 보통 무엇을
rtrim($catTags, ', '); 
+1

','대신 ','이 필요합니다. 왜냐하면 문자열 끝에 여분의 공백이 있습니다. 나는 방금 그것을 고쳤다. – Sagi

+0

덕분에, wordpress는 그 다음에 공간을 생성하고있었습니다. : D – Xavier

+0

방금 ​​그 사실을 깨닫고 나의 이전 코멘트 인 haha를 삭제했습니다 : D – Xavier

0

는 이미 변수에 데이터가있을 경우 확인함으로써 루프의 시작에 쉼표를 추가하는 것입니다.

따라서이 같은이 경우 뭔가 :

if (strlen($catTags) > 0) 
    $catTags .= ','; 
+0

그래서 각 반복에서 문자열의 길이를 계산합니까? 나는 배열로 그것을 빌드하는 것이 더 좋다고 생각하고, 분리 자로 아이템을 결합한다. – Sagi

0

이 작동합니다 :

반환 SUBSTR ($ 문자열, 0, -strlen (''));

은 문자열 끝에있는 마지막 쉼표를 제거합니다.

관련 문제