如何在codeigniter中编写组件

f4t66c6m  于 2022-12-07  发布在  其他
关注(0)|答案(2)|浏览(91)

我想知道如何在codeigniter中编写一个组件我使用过symfony1.4,有一些include_component(“name”,datarray()),我们可以加载一个组件(它实际上是一个操作)。
我已经知道我们有$this-〉load-〉view('admin/template/login')来加载视图,但是我想知道有没有办法调用这样的操作?
这个-〉加载(新闻/列表,数组('date'=〉xxx-xx-xx))
无论如何谢谢你

cbjzeqam

cbjzeqam1#

您可以通过使用库、助手或插件来实现这一点。
application/library中使用库类LoadNews.php的示例

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

class LoadNews {

  public function showList($date_array) {
    // do stuff with date array
  }
}

/* End of file LoadNews.php */
/* Location: ./application/libraries/LoadNews.php */

然后在控制器中调用

$this->load->library('LoadNews');
$this->loadnews->showList(array('date'=>'2014-12-19'));
bxpogfeg

bxpogfeg2#

是的,您可以从CI 3执行此操作。
在你的控制器或视图中只调用$this-〉load-〉view(视图,数据);
示例:

<?php
    defined('BASEPATH') or die('No direct script allowed');

    class PageController extends CI_Controller
    {
        public function index()
        {
            $data = [
                'names' => ['john', 'doe'],
                'ages' => ['24', '30']
            ];
            $this->load->view('index', $data);
        }
    }
?>

在您的视图中,您可以分别以$names$ages访问“姓名”和“年龄”。
您可以在视图中执行此操作:

<?php 
    echo '<pre>';
        print_r($names);
        print_r($ages);
    echo '</pre>';
?>

结果:

Array (
    [0] => john
    [1] => doe
)
Array (
    [0] => 24
    [1] => 30
)

相关问题