Библиотека вендоров Cakephp Класс пространств имен не найден - PullRequest
0 голосов
/ 04 апреля 2019

У меня есть проект cakephp2.7, хочу использовать codeitnowin генератор штрих-кода поместил его в
app\Vendor\barcode-generator\CodeItNow\BarcodeBundle\Utils
но это говорит
Класс 'QrCode' не найден
Я перепробовал много вещей, но я думаю, что есть некоторая проблема с именами
Я также добавил следующее в bootstrap.php

spl_autoload_register(function ($class) {
    foreach (App::path('Vendor') as $base) {
        $path = $base . str_replace('\\', DS, $class) . '.php';
        if (file_exists($path)) {
            include $path;
            return;
        }
    }
});
    <?php
    App::uses('AppController', 'Controller');
    App::import('Vendor', 'barcode-generator'.DS.'CodeItNow'.DS.'BarcodeBundle'.DS.'Utils'.DS.'QrCode');
    use CodeItNow\BarcodeBundle\Utils;

    class GenerateController extends AppController {

            public function beforeFilter() {
                    parent::beforeFilter();
                    $this->Auth->allow();
                    $this->layout = 'admin';
            }

            public function qrcode(){
                    //error here***************
                    $qrCode = new QrCode();
                    //$qrCode = new CodeItNow\BarcodeBundle\Utils\QrCode(); /*also not working*/
                    $qrCode
                    ->setText('QR code by codeitnow.in')
                    ->setSize(300)
                    ->setPadding(10)
                    ->setErrorCorrection('high')
                    ->setForegroundColor(array('r' => 0, 'g' => 0, 'b' => 0, 'a' => 0))
                    ->setBackgroundColor(array('r' => 255, 'g' => 255, 'b' => 255, 'a' => 0))
                    ->setLabel('Scan Qr Code')
                    ->setLabelFontSize(16)
                    ->setImageType(QrCode::IMAGE_TYPE_PNG)
                    ;
                    echo '<img src="data:'.$qrCode->getContentType().';base64,'.$qrCode->generate().'" />';
                    exit;

            }//end qrcode()

    }
...