CodeIgniter:创建新的帮助程序?使用帮助程序

2022-08-30 06:28:21

我需要以不同的方式循环很多数组,并将其显示在页面中。数组由模块类生成。我知道最好不要在“视图”上包含函数,我想知道在哪里插入函数文件。

我知道我可以“扩展”帮助者,但我不想扩展帮助者。我想用我的循环函数创建一个帮助器。让我们称之为loops_helper.php


答案 1

CodeIgniter 帮助程序是一个具有多个函数的 PHP 文件。它不是一个类

创建一个文件并将以下代码放入其中。

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

if ( ! function_exists('test_method'))
{
    function test_method($var = '')
    {
        return $var;
    }   
}

将其保存到应用程序/帮助程序/ 。我们称之为“new_helper.php”

第一行的存在是为了确保不能包含该文件并从 CodeIgniter 范围之外运行。在此之后的一切都是不言自明的。

使用帮助程序


这可以在您的控制器模型视图中(不可取)

$this->load->helper('new_helper');

echo test_method('Hello World');

如果您在很多位置使用此帮助程序,则可以通过将其添加到自动加载配置文件(即 .<your-web-app>\application\config\autoload.php

$autoload['helper'] = array('new_helper');

-马修


答案 2

一些允许您在帮助程序中使用 CI 实例的代码:

function yourHelperFunction(){
    $ci=& get_instance();
    $ci->load->database(); 

    $sql = "select * from table"; 
    $query = $ci->db->query($sql);
    $row = $query->result();
}

推荐