当前位置: 首页 > 文章教程  > 计算机与互联网 > 网络编程

20.5.5CodeIgniter的View(视图)

9/17/2020 9:26:54 PM 人评论

20.5.5CodeIgniter的View(视图)

20.5.5 CodeIgniter的View(视图)

在CodeIgniter中,视图从不直接调用,必须被一个控制器来调用。

(1)使用文本编辑器创建一个名为helloview.php的文件,如下面的代码20-7所示。

代码20-7 视图文件helloview.php


01 <html>

02 <head>

03 <title>Welcome-helloview.php</title>

04 </head>

05 <body>

06 <h1>Hello everyone!</h1>

07 </body>

08 </html>


【代码解析】这是一段简单的HTML代码,只用标题输出一句话。

(2)将该代码保存到application/views/目录下。然后,需要使用某个方法载入该视图文件。这个方法的用法如下所示。


$this->load->view('name');


(3)这行代码中,name是需要载入的视图文件的名字,文件的后缀名没有必要写出。接下来,在hello控制器的文件hello.php中,写入这段用来载入视图的代码,此时完整的hello.php如代码20-8所示。

代码20-8 在Controller中载入视图hello.php


01 <?php

02 class Hello extends Controller

03 {

04 function index()//方法index()

05 {

06 $this->load->view('helloview');

07 }

08

09 function saylucky()//方法saylucky()

10 {

11 echo'It\'s time to say"Good Luck"!';

12 }

13

14 function sayhello($name)//带参数的sayhello()方法

15 {

16 echo"Hello,$name!";

17 }

18 }

19 ?>


【代码解析】上述代码创建3个方法,其中第3个带一个参数$name。最重要的是第6行代码,载入前面创建好的helloview视图。

(4)此时再通过地址http://localhost/ch20/index.php/hello浏览hello.php,将看到如图20-7所示的执行结果。

图 20-7 在Controller中载入视图

(5)通过这段代码,读者了解了如何载入一个视图。但视图中经常需要动态数据的内容,下面就介绍如何处理含有动态数据的视图。动态数据通过控制器以一个数组或是对象的形式传入视图,这个数组或对象作为视图载入方法的第2个参数,如代码20-9所示。

代码20-9 向视图中添加动态数据hello.php


01 <?php

02 class Hello extends Controller

03 {

04 function index()//方法index()

05 {

06 $data['title']="New Title-Hello.php";

07 $data['heading']="大家好,欢迎使用CodeIgniter框架!";

08 $this->load->view('helloview1',$data);

09 }

10

11 function saylucky()//方法saylucky()

12 {

13 echo'It\'s time to say"Good Luck"!';

14 }

15

16 function sayhello($name)//带参数的sayhello()方法

17 {

18 echo"Hello,$name!";

19 }

20 }

21 ?>


【代码解析】第6、7两行定义了数组$data的两个元素,这两个元素分别是页面的标题和页面的文本内容。代码第8行向载入视图的方法view()传入第2个参数,该参数即代码前两行定义的数组。

(6)此时访问hello.php会看到如图20-8所示的执行结果,从图20-8可以看出,浏览器上的页面标题和页面的heading文字都更换成动态数据内容。

图 20-8 向视图添加动态数据

(7)最后还需要修改helloview.php,将在其中添加输出数据的PHP代码,修改后按hello-view1.php保存在application/views/目录下,修改后的代码如下所示。


01 <html>

02 <head>

03 <title><?php echo$title;?></title>

04 </head>

05 <body>

06 <h1><?php echo$heading;?></h1>

07 </body>

08 </html>


【代码解析】第3行和第6行是有输出数据的PHP代码。

至此,已经向读者介绍了CodeIgniter的最简单的用法,但离实际应用开发还很远,读者需要通过CodeIgniter提供的手册进一步学习、理解CodeIgniter框架。

相关教程

共有条评论 网友评论

验证码: 看不清楚?