2014-01-21 57 views
-2

這是一個簡單的事情,但我這個苦苦掙扎。我需要把變種放在另一個裏面。我需要將作者var放在var佈局中。我怎樣才能做到這一點?這裏是例子。將一個變種內的其他變種PHP

$layout=' 
<h2 class="title"><a href="#">Title</a></h2> 
<p class="meta">Sunday, December 03, 2013 7:27 AM Posted by <a href="#">'.$Someone.'</a></p> 
<div class="entry"> 
</div>'; 

if($autor=="john") 
    $someone=$autor; 
    echo $layout; 
else if($autor=="mary") 
    $someone=$autor; 
    echo $layout; 
+0

條件第一,然後就打電話給你的變量$佈局內的變量$的人。 ; D – B4NZ41

+2

Yo dawg!我聽到你喜歡變數.. – Halcyon

回答

5

你只需要改變你的代碼的順序。你必須定義一個變量,然後才能使用它:

$someone=$autor; 

$layout=' 
<h2 class="title"><a href="#">Title</a></h2> 
<p class="meta">Sunday, December 03, 2013 7:27 AM Posted by <a href="#">'.$someone.'</a></p> 
<div class="entry"> 
</div>'; 

echo $layout; 

if語句也可以簡化,因爲$someone始終成爲$autor值。事實上,你真的可以完全消除它。

此外,如果它們所包含的塊是一個以上的線路控制結構必須使用花括號。

PHP變量也是區分大小寫。所以$someone$Someone不是指同樣的事情。

2

我刪除了的if/else條件,因爲它沒有任何意義:

$layout='<h2 class="title"><a href="#">Title</a></h2><p class="meta">Sunday, December 03, 2013 7:27 AM Posted by <a href="#">'.$autor.'</a></p> 
<div class="entry"> 
</div>'; 
0

你需要嘗試調用它之前委派$有人變量,你也需要保持相同的外殼,在用於變量:

if($autor=="john"){ 
    $someone=$autor; 
} else if($autor=="john") { 
    $someone=$autor; 
} 

$layout=' 
<h2 class="title"><a href="#">Title</a></h2> 
<p class="meta">Sunday, December 03, 2013 7:27 AM Posted by <a href="#">'.$someone.'</a></p> 
<div class="entry"> 
</div>'; 

echo $layout; 
0

這不是「把變量放在另一個變量中」。這是延遲評估,和/或延遲字符串插值。

這是可能的,但遠程,但在這種情況下,您的解決方案很簡單:只需不建立$layout如此早!