1:foreach使用規則,他有以下幾個參數 from ,item name iteration index
2:如何使用foreach循環
如果php要傳遞一個數組(如:$array)給ecshop的smarty模板.那麼我們將通過from=$array 來接受,寫法是{foreach from = $array item = item}
3:
ecshop中smarty的下標如何表示,請看下面的例子:
{foreach from = $array item = item name=name}
{$smarty.foreach.name.iteration}
{/foreach}
這裏的iteration就是從1開始的下標,
如果要從0開始的下標,應該使用{$smarty.foreach.name.index}
4:如何判斷是否是foreach循環的開始和結束,最後一個元素.
{if $smarty.foreach.last}表示循環的最後一個元素.{if $smarty.freach.first}表示循環的開始.
5:如何使用雙重循環.
舉例如下:
{foreach from = $test item =item}
{foreach from=$item.children item=child}
{$child.name}
{/foreach}
{/foreach}
share_info.allow_share = 1
ecshop 裏邊{foreach from=$searchkeywords item=val}是什麼意思啊 要詳細的解釋
smarty的語法 相當於 foreach ($searchkeywords as $val) {}
php中foreach()的用法
foreach()有兩種用法:
1: foreach(array_name as $value)
{
statement;
}
這裏的array_name是你要遍歷的數組名,每次循環中,array_name數組的當前元素的值被賦給$value,並且數組內部的下標向下移一步,也就是下次循環回得到下一個元素。
2:foreach(array_name as $key => $value)
{
statement;
}
這裏跟第一種方法的區別就是多了個$key,也就是除了把當前元素的值賦給$value外,當前元素的鍵值也會在每次循環中被賦給變量$key。鍵值可以是下標值,也可以是字符串。比如book[0]=1中的“0”,book[id]="001"中的“id”.
示範用法的更多例子:
<?php
/*-------------------------------------------------------------------------*/
/* foreach example 1: value only */
echo "foreach example 1: value only ".'<br />';
$a = array(1, 2, 3, 17);
foreach ($a as $v) {
echo "Current value of "$a: $v".'<br />';
}
/*-------------------------------------------------------------------------*/
/* foreach example 2: value (with key printed for illustration) */
echo '<br />'.'<br />'."foreach example 2: value (with key printed for illustration) ".'<br />';
$a = array(1, 2, 3, 17);
$i = 0; /* for illustrative purposes only */
foreach ($a as $v) {
echo ""$a[$i] => $v".'<br />';
$i++;
}
/*-------------------------------------------------------------------------*/
/* foreach example 3: key and value */
echo '<br />'.'<br />'."foreach example 3: key and value ".'<br />';
$a = array(
"one" => 1,
"two" => 2,
"three" => 3,
"seventeen" => 17
);
foreach ($a as $k => $v) {
echo ""$a[$k] => $v".'<br />';
}
/*-------------------------------------------------------------------------*/
/* foreach example 4: multi-dimensional arrays */
echo '<br />'.'<br />'."foreach example 4: multi-dimensional arrays ".'<br />';
$a = array();
$a[0][0] = "a";
$a[0][1] = "b";
$a[1][0] = "y";
$a[1][1] = "z";
foreach ($a as $v1) {
foreach ($v1 as $v2) {
echo "$v2"n";
}
}
/*-------------------------------------------------------------------------*/
/* foreach example 5: dynamic arrays */
echo '<br />'.'<br />'."foreach example 5: dynamic arrays ".'<br />';
foreach (array(1, 2, 3, 4, 5) as $v) {
echo "$v"n";
}
?>
結果如下:
foreach example 1: value only
Current value of $a: 1
Current value of $a: 2
Current value of $a: 3
Current value of $a: 17
foreach example 2: value (with key printed for illustration)
$a[0] => 1
$a[1] => 2
$a[2] => 3
$a[3] => 17
foreach example 3: key and value
$a[one] => 1
$a[two] => 2
$a[three] => 3
$a[seventeen] => 17
foreach example 4: multi-dimensional arrays
a b y z
foreach example 5: dynamic arrays
1 2 3 4 5