if($_MODULE[huoqubaobei]=="2")
{
$arr = explode(',',$_MODULE[item_1]);
foreach($arr as $value)
{
$items=$itemManager-> queryById ($value);
}
}
elseif($_MODULE[huoqubaobei]=="1")
{
$items=$itemManager->queryByKeyword("","hotsell",9);
}
elseif($_MODULE[huoqubaobei]=="3")
{
$items = $itemManager->queryByCategory($categoryId,"hotsell",10);
}if($items)
{
foreach($items as $item)
{
$itemUrl = $uriManager->detailURI($item);
$itemPicUrl = $item->getPicUrl(160);
$itemTitle = $item->title;
$itemPrice = $item->price;
$itemsoldCount = $item->soldCount;
echo $itemUrl;
echo $itemPicUrl;
echo $itemTitle;
echo $itemPrice;
echo $itemsoldCount;
}
}else
{
$itemUrl ="#";
$itemPicUrl = "assets/images/nvtp.jpg";
$itemTitle = "请添加宝贝描述请添加宝贝描述请添加宝贝描述请";
$itemPrice = 628;
$itemsoldCount =89;
echo $itemUrl;
echo $itemPicUrl;
echo $itemTitle;
echo $itemPrice;
echo $itemsoldCount;
}
意思就是,你看每個if else裏面都有
echo $itemUrl;
echo $itemPicUrl;
echo $itemTitle;
echo $itemPrice;
echo $itemsoldCount;
可以在結束位置加上,不需要在每個if else裏面寫。
$response= ''; switch($_MODULE[huoqubaobei]){
case "2":
$arr = explode(',',$_MODULE[item_1]);
foreach($arr as $value){
$item=$itemManager-> queryById ($value);
$items = array_push($items, $item);
}
case "1":
$items = $itemManager->queryByKeyword("","hotsell",9);
case "3":
$items = $itemManager->queryByCategory($categoryId,"hotsell",10);
default:
$items = array();
} if($items){
foreach($items as $item){
$itemUrl = $uriManager->detailURI($item);
$itemPicUrl = $item->getPicUrl(160);
$itemTitle = $item->title;
$itemPrice = $item->price;
$itemsoldCount = $item->soldCount;
$response .= $itemUrl.$itemPicUrl.$itemTitle.$itemPrice.$itemsoldCount
}
}else{
$itemUrl ="#";
$itemPicUrl = "assets/images/nvtp.jpg";
$itemTitle = "请添加宝贝描述请添加宝贝描述请添加宝贝描述请";
$itemPrice = 628;
$itemsoldCount =89;
$response .= $itemUrl.$itemPicUrl.$itemTitle.$itemPrice.$itemsoldCount
} echo $response;
case "2":
$arr = explode(',',$_MODULE[item_1]);
foreach($arr as $value){
$item=$itemManager-> queryById ($value);
array_push($items, $item);
}
case "1":
$items = $itemManager->queryByKeyword("","hotsell",9);
case "3":
$items = $itemManager->queryByCategory($categoryId,"hotsell",10);
} if($items){
foreach($items as $item){
$itemUrl = $uriManager->detailURI($item);
$itemPicUrl = $item->getPicUrl(160);
$itemTitle = $item->title;
$itemPrice = $item->price;
$itemsoldCount = $item->soldCount;
$response .= $itemUrl.$itemPicUrl.$itemTitle.$itemPrice.$itemsoldCount
}
}else{
$itemUrl ="#";
$itemPicUrl = "assets/images/nvtp.jpg";
$itemTitle = "请添加宝贝描述请添加宝贝描述请添加宝贝描述请";
$itemPrice = 628;
$itemsoldCount =89;
$response .= $itemUrl.$itemPicUrl.$itemTitle.$itemPrice.$itemsoldCount
} echo $response;
echo $itemUrl;
echo $itemPicUrl;
echo $itemTitle;
echo $itemPrice;
echo $itemsoldCount;
的可简化为
show($itemUrl, $itemPicUrl, $itemTitle, $itemPrice, $itemsoldCount);
function show() {
echo join('', func_get_args());
}函数 show 中可做各种美化工作2、原式就可写作
if($_MODULE[huoqubaobei]=="2")
{
$arr = explode(',',$_MODULE[item_1]);
foreach($arr as $value){
$item=$itemManager-> queryById ($value);
show($uriManager->detailURI($item),
$item->getPicUrl(160),
$item->title,
$item->price,
$item->soldCount
);
}
}
else if($_MODULE[huoqubaobei]=="1")
{
$items=$itemManager->queryByKeyword("","hotsell",9);
foreach($items as $item ){
show($uriManager->detailURI($item),
$item->getPicUrl(160),
$item->title,
$item->price,
$item->soldCount
);
}
}
else if($_MODULE[huoqubaobei]=="3")
{
$items = $itemManager->queryByCategory($categoryId,"hotsell",10);
foreach($items as $item){
show($uriManager->detailURI($item),
$item->getPicUrl(160),
$item->title,
$item->price,
$item->soldCount
);
}
}
else
{
show("#",
"assets/images/nvtp.jpg",
"请添加宝贝描述请添加宝贝描述请添加宝贝描述请",
628,
89,
);
}
3、考虑到前三个分支存在相同的取数方法,于是可以再写一个函数function item_show($items, $uriManager) {
foreach($items as $item){
show($uriManager->detailURI($item),
$item->getPicUrl(160),
$item->title,
$item->price,
$item->soldCount
);
}
}4、代码就进一步变为if($_MODULE[huoqubaobei]=="2")
{
$arr = explode(',',$_MODULE[item_1]);
foreach($arr as $value){
items_show(array($itemManager->queryById($value)), $uriManager);
}
}
else if($_MODULE[huoqubaobei]=="1")
{
items_show($itemManager->queryByKeyword("","hotsell",9), , $uriManager);
}
else if($_MODULE[huoqubaobei]=="3")
{
items_show($itemManager->queryByCategory($categoryId,"hotsell",10), $uriManager);
}
else
{
show("#",
"assets/images/nvtp.jpg",
"请添加宝贝描述请添加宝贝描述请添加宝贝描述请",
628,
89,
);
}function show() {
echo join('', func_get_args());
}function items_show($items, $uriManager) {
foreach($items as $item){
show($uriManager->detailURI($item),
$item->getPicUrl(160),
$item->title,
$item->price,
$item->soldCount
);
}
}
$itemUrl ="#";
$itemPicUrl = "assets/images/nvtp.jpg";
$itemTitle = "请添加宝贝描述请添加宝贝描述请添加宝贝描述请";
$itemPrice = 628;
$itemsoldCount =89;
$response .= $itemUrl.$itemPicUrl.$itemTitle.$itemPrice.$itemsoldCount
怎么写到循环上
foreach($items as $item){ 次数跟他一样
其实他前面if($items)判断是不对的不能这样判断我最后面是else if($_MODULE[huoqubaobei]=="4") 判断的
else
{
$itemUrl ="#";
$itemPicUrl = "assets/images/nvtp.jpg";
$itemTitle = "请添加宝贝描述请添加宝贝描述请添加宝贝描述请";
$itemPrice = 628;
$itemsoldCount =89;
echo $itemUrl;
echo $itemPicUrl;
echo $itemTitle;
echo $itemPrice;
echo $itemsoldCount;
}