2011-12-14 133 views
2

我有以下代碼。如何將foreach循環分配給變量?

$sn_count = 1; 
    foreach($points as $point){ 
    echo "<div class=\"points\">"; 
    echo "<div class=\"serial\">".$sn_count."</div>"; 
    echo "<div class=\"pointsdesc\">"; 
    echo $point['points_description']; 
    echo "</div></div>"; 
    $sn_count++; 
    } 

是否有可能上面的代碼分配給一個變量$pointsvar

每次我使用$pointsvar上述代碼應被打印。請幫忙。 感謝

+0

你的意思是像包括或編譯器常數? – 2011-12-14 14:48:44

回答

3

功能是您的解決方案。

function printPointVars($points) 
{ 
    $sn_count = 1; 
    $html = ''; 
    foreach($points as $point){ 
     $html .= "<div class=\"points\">" 
      . "<div class=\"serial\">".$sn_count."</div>" 
      . "<div class=\"pointsdesc\">" 
      . $point['points_description'] 
      . "</div></div>"; 
     $sn_count++; 
    } 
    echo $html; 
} 

printPointVars($points); 
0

使用=來分配的東西給一個變量的結尾......事情是這樣的:

$sn_count = 1; 

$pointsvar = ""; 

foreach($points as $point){ 
    $pointsvar .= "<div class=\"points\">"; 
    $pointsvar .="<div class=\"serial\">".$sn_count."</div>"; 
    $pointsvar .="<div class=\"pointsdesc\">"; 
    $pointsvar .=$point['points_description']; 
    $pointsvar .="</div></div>"; 
    $sn_count++; 
} 

echo $pointsvar; 

如果你想調用這樣的事情很多,只是移動到這個函數,傳入$ points數組。

+0

並使格式在瀏覽器中顯示格式;在每行的末尾添加`「\ n」`。 – dchrastil 2011-12-14 14:50:59

0

如果$ pointsvar是靜態的,可以嗎? (在該值設置一次,然後永遠?)是這樣的,只是改變你的呼應,成爲assignents ...

$pointsvar = ''; 
$sn_count = 1; 
    foreach($points as $point){ 
    pointsvar = pointsvar."<div class=\"points\">"; 
    pointsvar = pointsvar."<div class=\"serial\">".$sn_count."</div>"; 
    pointsvar = pointsvar."<div class=\"pointsdesc\">"; 
    pointsvar = pointsvar.$point['points_description']; 
    pointsvar = pointsvar."</div></div>"; 
    $sn_count++; 
    } 
1

使用功能...不是一個變量

function pointvar() { 
    //Your code here  
} 

如果你想獲取或設置您的變量

function pointvar($var = null) { 
    if(!empty($var)) { 
     $pointvar = $var; 
    } 
    //Your code here 
    return $pointvar; 
} 

pointvar(12); //Set pointvar and execute your code 
$newVar = pointvar(); //Get pointvar value and execute your code