如何在 Codeigniter 中加载图像?

Posted

技术标签:

【中文标题】如何在 Codeigniter 中加载图像?【英文标题】:How to load Images in Codeigniter? 【发布时间】:2012-11-07 04:28:29 【问题描述】:

嘿,我是 Codeigniter 的新手。在 Controllers 文件夹中,我创建了一个名为 caller.php 的文件,并在 \Views 中创建了一个文件 home1.php。在root directory 中,我创建了一个名为\Images 的图像文件夹,还创建了一个名为\csscss 文件夹。在 images 文件夹中有 6 张图片。在 css 文件夹中 style.css 文件存在。

caller.php我写

<?
class caller extends CI_Controller

    function index()
    
        $this->load->view('home1');

        // what i have to write here lo load images....

    

home1.php我写

<html>
  <head>

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

    // what i have to write here to load images


  </head>

  <body>
    <div id="outer">

      <div id="container">

        <div id="images">
          <img src="new.jpg"  />
          <img id="image1" src="1.jpg" />
          <img id="image2" src="2.jpg" />
          <img id="image3" src="3.jpg" />
          <img id="image4" src="4.jpg" />
          <img id="image5" src="5.jpg" />
        </div>

        <div id="slider">
          <a href="#image1">1</a>
          <a href="#image2">2</a>
          <a href="#image3">3</a>
          <a href="#image4">4</a>
          <a href="#image5">5</a>
        </div>
...................................................
....................................................
      </div>
    </div>
  </body>
</html>

现在对于上面的代码我如何加载图像。请专家帮助我。 如果需要额外的配置,请提及。

【问题讨论】:

就像你在 css 的情况下做的一样。完全一样。只需将名称和 html 标记从链接更改为 img。 【参考方案1】:

由于您已经在使用 url 助手,我建议使用 base_url 包装您的图像 src 属性,例如:

<img src="<?php echo base_url('images/1.jpg'); ?>" />

正如另一个答案中提到的,最好(强制?)将控制器中的类名大写

class Caller extends CI_Controller  ...

【讨论】:

【参考方案2】:

首先,您需要将您的班级名称大写。

    class Caller extends CI_Controller 

        public function index()
        
            // method code goes here
        

    

然后,您需要使用绝对链接或 CI URL 帮助程序链接到这些图像:“/images/1.jpg”等等。 此处详细介绍了如何与 CI URL 帮助程序一起使用:Helper

编辑

在你的构造方法中加载 URL 帮助器:

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

您可以像这样创建一个 URL:

    echo base_url("blog/post/123");

这将使:

    http://example.com/index.php/news/local/123

或者

    http://example.com/news/local/123

如果你在你的配置文件中取出了 index.php。

这是一个带有调用 URL 助手的构造函数的类:

    class Caller extends CI_Controller  

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

        public function index() 
         
            // method code goes here 
         
     

【讨论】:

请在此处发布答案而不是链接,以免链接失效。 如果你解释得再多一点,对我的帮助会更大。 在你的控制器中,你需要添加一个构造方法来调用URL库。我编辑了答案给你看。【参考方案3】:

在根目录下创建文件夹,并在views html文件中轻松编写代码。

如果目录名称是directoryName 和图像名称imageName.jpg

你可以这样打电话。

<img src="directoryName/imageName.jpg">

【讨论】:

【参考方案4】:

您可以执行与加载 CSS 文件相同的操作。 在根目录中创建一个文件夹。创建一个子文件夹(如果您有多站点) 然后将配置文件中的 base_url 指向您的基本路径。

然后做同样的事情&lt;img id="image1" src="&lt;?PHP echo base_url(); ?&gt;images/[sub-folder]/1.jpg" /&gt;

【讨论】:

“将配置文件中的 base_url 指向基本路径”是什么意思。你能再解释一下吗? base_url 到你的路径你的根路径。您在其中创建了应用程序、系统和其他文件夹(样式、脚本和图像)。【参考方案5】:

只有简单的方法

<img id="image1" src="<?php echo base_url('1.jpg'); ?>" />

那个坐!!!

【讨论】:

以上是关于如何在 Codeigniter 中加载图像?的主要内容,如果未能解决你的问题,请参考以下文章

CodeIgniter - 如何在项目中加载 stripe-php 库?

我如何在控制器函数中加载目录作为视图:Codeigniter

如何在 codeigniter 4 中加载 css 或 js 文件?

如何在codeigniter ci中加载javascript css文件

CodeIgniter:在控制器中加载控制器

为啥这个构造函数无法在 Codeigniter 中加载?