我想将Composer添加到我的CodeIgniter项目和autoload依赖项中。我走了几步,但我可能遗漏了什么。以下是我遵循的步骤。
在config.php文件中,我将$config['composer_autoload']
更改为TRUE
,我还尝试将其更改为FCPATH.'vendor\autoload.php'
,但这不起作用。
在项目根文件夹中,我使用了以下命令:composer require mpdf/mpdf
,它创建了一个包含mpdf的供应商文件夹。
在阅读了一点之后,我在index.php的末尾做了这个修改:
/*
* --------------------------------------------------------------------
* LOAD THE BOOTSTRAP FILE
* --------------------------------------------------------------------
*
* And away we go...
*/
include_once './vendor/autoload.php';
require_once BASEPATH.'core/CodeIgniter.php';
在进行更改之后,项目结构就是这样的:
这里是composer.json:
{
"description": "The CodeIgniter framework",
"name": "codeigniter/framework",
"type": "project",
"homepage": "https://codeigniter.com",
"license": "MIT",
"support": {
"forum": "http://forum.codeigniter.com/",
"wiki": "https://github.com/bcit-ci/CodeIgniter/wiki",
"slack": "https://codeigniterchat.slack.com",
"source": "https://github.com/bcit-ci/CodeIgniter"
},
"require": {
"php": ">=5.3.7",
"mpdf/mpdf": "^8.0"
},
"suggest": {
"paragonie/random_compat": "Provides better randomness in PHP 5.x"
},
"require-dev": {
"mikey179/vfsStream": "1.1.*",
"phpunit/phpunit": "4.* || 5.*"
}
}
这是我用来测试mpdf的控制器:
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class TestingGround extends CI_Controller{
public function index() {
$this->load->view("testing_ground");
}
public function pdf(){
$mpdf = new mPDF();
// Write some HTML code:
$mpdf->WriteHTML('Hello World');
// Output a PDF file directly to the browser
$mpdf->Output();
}
}
这是我得到的错误:Class 'mPDF' not found C:\wamp64\www\kariyer_1.6\application\controllers\TestingGround.php 12
发布于 2020-05-26 10:50:52
您必须使用正确的类-- mPDF
使用名称空间,正如在https://mpdf.github.io/installation-setup/installation-v7-x.html中所记录的那样,您必须实例化它如下:
$mpdf = new \Mpdf\Mpdf();
https://stackoverflow.com/questions/62028818
复制