扩展CodeIgniter的view可以使用布局

本文深入探讨了为何80%的码农未能成为架构师,通过提供PHP代码示例,阐述了布局设计在开发过程中的关键作用,并通过实例演示如何实现高效且灵活的视图布局。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

话不多说,直接代码,保存为libraries


<?php
if (!defined('BASEPATH')) exit('No direct script access allowed');

class Layout
{
	var $obj;
	var $layout;

	function Layout($layout = "layouts")
	{
		$this->obj =& get_instance();
		$this->layout = $layout;
	}

	function setLayout($layout)
	{
		$this->layout = $layout;
	}

	function view($view, $data=null, $return=false)
	{
		$data['content'] = $this->obj->load->view($view,$data,true);

		if($return)
		{
			$output = $this->obj->load->view($this->layout,$data, true);
			return $output;
		}
		else
		{
			$this->obj->load->view($this->layout,$data, false);
		}
	}
}
?>
然后呢 在view下面创建你的layouts.php或者其它(用setLayout指定)


layout.php中 子视图的变量名叫 $content

即:

<html><head></head>

<body>

<h2>Layout</h2>

<div class="container">

<?php echo $content;?>

</div>

<p>footer</p>

</body>

</html>
controller里调用

$this->load->libraries('layout');

$this->layout->view('my/viewfile' , array('title' => 'page title'));''跟$this->load->view用法一样。


转载于:https://my.oschina.net/imot/blog/141341

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值