ホームページ > バックエンド開発 > PHPチュートリアル > ThinkPHP 学習 (4) Volist Tag の高度なアプリケーションのための複数の入れ子ループ_PHP チュートリアル

ThinkPHP 学習 (4) Volist Tag の高度なアプリケーションのための複数の入れ子ループ_PHP チュートリアル

WBOY
リリース: 2016-07-13 10:30:09
オリジナル
852 人が閲覧しました

アクション コード:

    public function index(){
		$prod = I("get.prod_en");
		$id = I("get.id", 0, "int");
		if ($prod == ""){
			$serviceProduct = array();//多重循环遍历的数组
ログイン後にコピー
//数据保存在两张表中,这里通过循环初始化$serviceProduct数组
			$service = M("product_class")->order("oid ASC")->select();
			for ($i = 0; $i < count($service); $i++)
			{
				array_push($serviceProduct, array("srvName"=>$service[$i]["pc_cn"], "product"=>M("product")->where("prod_class_id=".$service[$i]["pcid"])->order("oid ASC")->select()));
			}
ログイン後にコピー
//如果要在模板中输出变量,必须在在控制器中把变量传递给模板,系统提供了assign方法对模板变量赋
值,无论何种变量类型都统一使用assign赋值。
			$this->assign("serviceProduct", $serviceProduct);
			$this->display();
		}else{
			if ($id > 0){
				$this->display("detail");
			}else{
				$this->assign('prod_en', $prod);
				$clsList = M("question_class")->order("oid ASC")->select();
				$this->assign('clsList', $clsList);
				
				$qusList = M("question")->order("oid ASC")->select();
				$this->assign('qusList', $qusList);
				$this->display("list");
			}
		}
	}
ログイン後にコピー
テンプレート コード:

	<volist name="serviceProduct" id="sp" key="i">
		<dl class="dlist odd">
			<dt>{$sp.srvName}</dt>
			<volist name="sp.product" id="pd" key="j">
				<dd>{$pd.prod_cn}</dd>
				<if condition="$j lt count($sp['product'])">
				<dd>|</dd>
				</if>
			</volist>
			<if condition="count($sp['product']) EQ 0">
				<dd> </dd>
			</if>
		</dl>
	</volist>
ログイン後にコピー
複数のネストされたループを使用する場合、各ボリストのキー値を指定し、
<if condition="$j lt count($sp['product'])">
ログイン後にコピー
を使用してそれが配列内の最後の要素であるかどうかを判断する必要があります。


www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/767112.html技術記事アクション コード: public functionindex(){$prod = I("get.prod_en");$id = I("get.id", 0, "int");if ($prod == ""){$ serviceProduct = array();//複数のループによって走査される配列//データは...に保存されます
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート