致命错误:在第 5 行调用 C:\wamp\www\Test-CI\application\views\layout.php 中未定义的函数 base_url()

Posted

技术标签:

【中文标题】致命错误:在第 5 行调用 C:\\wamp\\www\\Test-CI\\application\\views\\layout.php 中未定义的函数 base_url()【英文标题】:Fatal error: Call to undefined function base_url() in C:\wamp\www\Test-CI\application\views\layout.php on line 5致命错误:在第 5 行调用 C:\wamp\www\Test-CI\application\views\layout.php 中未定义的函数 base_url() 【发布时间】:2012-07-19 20:45:51 【问题描述】:

您好,我是 CodeIgniter 和 php 的新手,我正在尝试第一次设置它,但它给出了以下错误。

致命错误:调用未定义的函数 base_url() in

    C:\wamp\www\Test-CI\application\views\layout.php 在第 5 行

    main( ) IN ..\index.php:0 require_once('C:\wamp\www\Test-CI\system\core\CodeIgniter.php' ) IN ..\index.php:202

    call_user_func_array () IN ..\CodeIgniter.php:359

    首页->index( ) IN ..\CodeIgniter.php:0

    CI_Loader->view() IN ..\home.php:17

    CI_Loader->_ci_load( ) IN ..\Loader.php:419

    include('C:\wamp\www\Test-CI\application\views\layout.php') IN ..\Loader.php:833

我的代码:

 <html>
    <head>
        <meta http-equiv="Content-type" content="text/html; charset=utf-8">
        <title>Galleriffic | Custom layout with external controls</title>
        <link rel="stylesheet" href="<?php base_url(); ?>/assets/css/basic.css" type="text/css" />
        <link rel="stylesheet" href="<?php base_url(); ?>/assets/css/galleriffic-5.css" type="text/css" />
        
        <!-- <link rel="stylesheet" href="<?php base_url(); ?>/assets/css/white.css" type="text/css" /> -->
        <link rel="stylesheet" href="<?php base_url(); ?>/assets/css/black.css" type="text/css" />
        
        <script type="text/javascript" src="<?php base_url(); ?>/assets/js/jquery-1.3.2.js"></script>
        <script type="text/javascript" src="<?php base_url(); ?>/assets/js/jquery.history.js"></script>
        <script type="text/javascript" src="<?php base_url(); ?>/assets/js/jquery.galleriffic.js"></script>
        <script type="text/javascript" src="<?php base_url(); ?>/assets/js/jquery.opacityrollover.js"></script>
        <!-- We only want the thunbnails to display when javascript is disabled -->
        <script type="text/javascript">
            document.write('<style>.noscript  display: none; </style>');
        </script>
    </head>

【问题讨论】:

你需要 URL 助手 .. 参考codeigniter.com/user_guide base_url() function not working in codeigniter的可能重复 【参考方案1】:

转到 application/config/autoload.php

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

将此添加到任何位置

在这个控制器中

function __construct()

    parent::__construct();
$this->load->helper('url');


【讨论】:

【参考方案2】:

只有三种方法可以解决。 在此路径 application/config/autoload.php 中粘贴以下代码。

大部分我都用这个

require_once BASEPATH . '/helpers/url_helper.php';

这很好,但有时会失败

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

我从不使用它,但我知道它有效

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

【讨论】:

【参考方案3】:

在codeigniter项目中加载其他文件(css,js)和文件夹(images)

我们必须遵循两个简单的步骤:

1.在您的 codeigniters 文件夹中创建文件夹 public(可以给出任何名称)将您的引导文件 css 和 js 文件夹放在公共文件夹中。 https://i.stack.imgur.com/O2gr6.jpg

2.现在我们必须使用两行代码 1.load->helper('url'); ?> 2.

转到您的视图文件

将第一行用于加载基本 URL

   <?php $this->load->helper('url'); ?>

其次在你的 html 头标签中放这个

   <link rel="stylesheet" type="text/css" href="<?php echo base_url(); ?>/public/css/bootstrap.css">

现在您可以在您的 codeigniter 中享受引导程序

【讨论】:

【参考方案4】:

只需创建一个变量为$base_url

$base_url = load_class('Config')->config['base_url'];

<?php echo $base_url ?>

并在您的代码中调用它..

【讨论】:

【参考方案5】:

codeigniter 需要加载 url helper 来调用base_url() 函数。

使用application-&gt;config-&gt;autoload.php

编辑自动加载帮助器数组并添加 url 帮助器..

base_url() 功能现在正在运行..

【讨论】:

【参考方案6】:

您必须加载 url 帮助程序才能访问该功能。 要么添加

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

在你的控制器中的某个地方。

或者,要让它在任何地方自动加载,请确保application/config/autoload.php 中的行看起来像

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

在该数组中有'url'(如上所示)。

【讨论】:

这很好用,在为我的锚标签生成带有 base_url 的链接时遇到问题【参考方案7】:

检查您是否在控制器中扩展CI_Controller 类,并且在视图中您必须使用echo base_url($path) 函数,否则它将不起作用。

【讨论】:

【参考方案8】:

只需将$autoload['helper'] = array('url'); 添加到autoload.php

【讨论】:

@kenorb 是的,它确实提供了答案。它甚至是正确的。不幸的是,这个问题也是重复的。 @holodoc 可能是,但答案是从其他投票的答案中复制而来的,因此无论如何都应该将其删除。已经有太多完全相同的答案,稍后发布。所以要么人们不阅读其他答案,要么他们认为他们可以获得一些分数。 @kenorb 是否复制它仍然是一个有效的答案。社区的投票习惯是一个完全不同的话题。无论哪种方式,问题现在都被标记为重复,可能会被关闭。【参考方案9】:

只需添加

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

在你的配置文件中的 autoload.php 中

【讨论】:

我个人不鼓励对新用户使用自动加载...最好一遍又一遍地手动进行(与所有内容一样)以扎实学习它,然后您可以开始使用快捷方式...只是我的意见......【参考方案10】:

您需要先加载帮助程序,然后再将视图加载到控制器中的某个位置。

但是我觉得这里你要使用site_url()这个函数

在加载视图之前,基本上是在控制器方法中的任何位置,将其添加到代码中:

$this-&gt;load-&gt;helper('url');

然后使用函数site_url()

【讨论】:

【参考方案11】:

首先你必须给 echo 以显示基本 url。然后在您的应用程序/配置/文件夹中的 autoload.php 中更改以下值。 $autoload['helper'] = array('url'); 那么您的问题将得到解决。

【讨论】:

【参考方案12】:

你必须在base_url() 函数之前使用echo。否则它不会打印基本网址。

【讨论】:

以上是关于致命错误:在第 5 行调用 C:\wamp\www\Test-CI\application\views\layout.php 中未定义的函数 base_url()的主要内容,如果未能解决你的问题,请参考以下文章

连接到 wamp 服务器

致命错误:在第 7 行调用非对象上的成员函数 prepare()。我想不通,为啥会出现此错误?

PHP 致命错误:在第 1 行 Laravel Artisan Tinker 的 eval() 代码中调用未定义函数 table()

致命错误:调用未定义的函数 site_url()

在第15行的C: wamp www storeinfo.php中读取结果集的标题时出错,而MySQL服务器已在第15行的C: wamp www storeinfo.php中消失

致命错误:在第 177 行调用 C:\Users\Jarek\mywebsite\phpMyAdmin\libraries\php-gettext\gettext.inc 中未定义的函数 mb_det