2011-12-14 131 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