2013-12-11 1 views
-1

에 빈 값을 무시하는 빠른 방법은 내가 연결된 형태로이 문자열을 가지고있다.빠른 기능 또는 연결된 문자열

은 다음과 같이 나타납니다 : 나는 비어있는 그 변수를 무시하려는

John | | Doe 

.

나는 다음과 같이 원하는 :

John Doe 

내가 이것에 대한 빠른 방법이 필요합니다. 다른 조건이 인 경우 이것을 으로 해결할 수도 있지만 이것이 최적의 해결책은 아닙니다.

이러한 유형의 상황을 처리하려면 빠른 방법이 필요합니다.

어떤 해결책을 제공해 주시겠습니까?

+0

'if else'를 사용할 때의 문제점은 무엇입니까? –

+0

그럼'firstName' 또는'lastName' 만있는 경우 어떻게됩니까? 또한 나머지 조합은 어떻게됩니까? –

+0

프로젝트에서 너무 많은 경우가 있으므로 빠른 방법을 원합니다 –

답변

1

이 시도 :

$string = implode(' | ', array_filter(array($firstName, $middleName, $lastName), 'strlen')); 

지금 당신도 매개 변수의 큰 배열을 만들 수 있습니다. 모든 빈 매개 변수는 concatinated되기 전에 제거됩니다. 나는 지금 파이프를 사용했으나 코스가 아닐 수 있습니다.

+0

firstName 또는 lastName이 비어 있다면 어떻게해야합니까? –

+0

사실, 약간 변경되었습니다. –

0

왜이 마음에 들지 :

$name = implode(" ", array($firstName, $middleName, $lastName)); 
0

문자열이 방법은 다음과 같은 순서

defaultName = "defaultName123"에 중간 이름을 특정 할 수있다 대체;

middlename = (userInput == "")? defaultName : userInput;

문자열이 포함됩니다.

| defaultname123 |

중간 부분에서만 교체 할 수 있습니다.

PS 죄송합니다. if 문은 여전히 ​​숨겨져 있습니까? :

제 3 차 진술