2013-07-19 65 views
-5

簡化了問題。同時連接2個變量

$ VAR1應該是 「1245」

$ VAR2應該是 「1345」

目的是分配公共值時( 「1」, 「4」, 「5」) - 需要分配只有一次。

$var1=""; 
$var2=""; 

$var1.="1"; //need same content for $var2 
$var1.="2"; //this is for var1 only 
$var2.="3"; //this is for var2 only 
$var1.="4"; //need same content for $var2 
$var1.="5"; //need same content for $var2 

這不是我要找:

$var1=""; 
$var2=""; 

$var1.="1"; 
$var1.="2"; 
$var1.="4"; 
$var1.="5"; 

$var2.="1"; 
$var2.="3"; 
$var2.="4"; 
$var2.="5"; 

因爲我想下面的任務在代碼中只出現一次:

.="1"; 
.="4"; 
.="5"; 

我希望我是明確的。

編輯: 試過這樣:

$var1=""; $var2=""; 
$var2.=$var1.="1"; 
$var1.="2"; 
$var2.="3"; 
$var2.=$var1.="4"; 
$var2.=$var1.="5"; 

//$var1=>1245 
//$var2=>131241245 


$var1=""; $var2=""; 
$var1.=$var2.="1"; 
$var1.="2"; 
$var2.="3"; 
$var1.=$var2.="4"; 
$var1.=$var2.="5"; 

//$var1=>121341345 
//$var2=>1345 
+0

你想添加你已經試過的東西嗎? – andrewsi

+0

你爲什麼需要這樣做?你真的想做什麼? – Blender

+0

攪拌機:我想避免重複代碼中的內容字符串 – ihtus

回答

-1

謝謝你們的好答案。但我想出了一個解決方案(感謝耶穌基督!),這對我來說更舒服:

$var1[]=$var2[]="1"; 
$var1[]="2"; 
$var2[]="3"; 
$var1[]=$var2[]="4"; 
$var1[]=$var2[]="5"; 
$var1=implode("",$var1); 
$var2=implode("",$var2); 

//$var1=1245 
//$var2=1345 
1

使用此:

$var1 = $var2 = "1245"; 
$var2[1] = "3"; 

或者:

$var1 = $var2 = '1'; 
$var1 = $var2 .= '2'; 
$var1 = $var2 .= '4'; 
$var1 = $var2 .= '5'; 
$var2[1] = '3'; 
+0

你有沒有測試?你的第一個片段會給你$ var1:121341345; $ var2:1345;第二個片段不是同時並置兩個變量,這是OP試圖做的事情 –

+0

@shreddeR:你測試過嗎?記住,在PHP中,賦值的結果是賦值...在第二個片段中,$ var2與新數字一起被複制,然後完全被複制的字符串被賦值給$ var1 –

+0

Marc B:第二個片段被編輯和糾正,碎紙機是指以前的版本,這是不正確的。 – ihtus

0

你應該嘗試兩個瓦爾分成數組。

$var1 = "1234"; 

    $var2 = "145"; 

    $tab1 = str_split($var1); 
    $tab2 = str_split($var2); 
    $tab3 = array(); 

    foreach($tab1 as $value){ 
    if(in_array($value, $tab2)) 
     { 
     $tab3[] = $value; 
     } 

    } 
return implode('', $tab3); 
1

試試這個:

$var1 = $var2 = "5"; 
$var1 = $var2 = "4" . $var2; 
$var2 = "3" . $var2; 
$var1 = "2" . $var1; 
$var2 = "1" . $var2; 
$var1 = "1" . $var1; 
0

如果有限的,你要修改變量的數量,您可以創建引用傳遞變量的輔助功能:

function append($append, &$var1, &$var2 = null) { 
    $var1 .= $append; 
    if ($var2 !== null) { 
     $var2 .= $append; 
    } 
} 

而且使用它就像

$var1 = $var2 = ''; 
append('1', $var1, $var2); 
append('2', $var1); 
append('3', $var2); 
append('4', $var1, $var2); 
append('5', $var1, $var2); 

var_dump($var1,$var2);