2012-04-06 2 views
1

데이터베이스에있는 일부 변수에 대해 일반화하면 if를 작성하려고합니다. 이제 우리는 다음 변수와 값을한다고 가정 해 봅시다 :PHP 여러 변수가있는 경우

$var1 = "abc"; 
$var2 = "n/a"; 
$var3 = "das"; 
$var4 = "n/a"; 

내 문은 이러한 모든 변수를 포함해야하는 경우, "N/A가"와 "N/A"스크립트를 포함하는 모든 변수에 대해 반드시 포함하는 변수 확인 다른 변수를 $var21 = "Not Available"으로 만드십시오. 그게 가능하니?

+0

귀하의 데이터베이스 내부의 가치. 어쩌면 그것은 트릭을 할 것입니다 –

+1

배열을 사용합니까? + – Neysor

+0

물론 가능합니다 - 왜 이것을해야합니까? – Ryan

답변

1

개인적 취향 때문에 variable variables을 사용하지 않았습니다. 당신이 자경 론적이라면, you can certainly try.

대신에 여분의 해시를 생성합니다. 이렇게하면 if 문이 필요 없게됩니다. . 특정 키에 대한 텍스트를 필요로 할 때 :

$descriptions = array(
    "n/a" => "Not Available", 
    "brb" => "Be Right Back", 
    "iee" => "I'm easily extendable" 
); 

그럼 그냥

$descriptive_text = $descriptions[$var1]; 

업데이트 입력 할 수 있습니다

을 원래로 설정할 수있는 값이없는 경우 $descriptions이면 다음을 수행하십시오.

$descriptive_text = (is_null($descriptions[$var1])) ? $var1 : $descriptions[$var1]; 
+0

변수에 "n/a"가 포함되어 있지 않으면 어떻게 실제 값을 사용할 수 있습니까? – user1040157

+0

업데이트 됨. 테스트되지 않았지만 작동해야합니다. –

+0

작동합니다. 고마워요! – user1040157

0

이 경우 배열을 사용해야합니다.

$array = array("abc", "n/a", "das", "n/a"); 
foreach($array as $key => $value) 
{ 
if($value == "n/a") 
{ 
    echo "Do Something!"; 
} 
} 

참조 : Arrays.

관련 문제