Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 代码点火器+;zend条码类_Php_Codeigniter_Zend Framework_Codeigniter 2_Barcode - Fatal编程技术网

Php 代码点火器+;zend条码类

Php 代码点火器+;zend条码类,php,codeigniter,zend-framework,codeigniter-2,barcode,Php,Codeigniter,Zend Framework,Codeigniter 2,Barcode,我通过在应用程序/库上放置Zend目录来集成Zend_条形码类 在我的控制器下: public function barcode_gen() { $this->load->library('Zend/Barcode/Barcode'); $barcodeOptions = array('text' => 'ZEND-FRAMEWORK'); $rendererOptions = array(); Zend_Barcode::factory

我通过在应用程序/库上放置Zend目录来集成Zend_条形码类

在我的控制器下:

  public function barcode_gen()
  {
    $this->load->library('Zend/Barcode/Barcode');
    $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
    $rendererOptions = array();
    Zend_Barcode::factory('code39', 'image', $barcodeOptions, $rendererOptions)->render();
  }
然而,这导致:

Non-existent class: Barcode
我也读过很多教程,但从来没有弄明白怎么做,有些教程已经过时了


即使我遵循这个线程,也没有运气。

当您使用$this->load->library()加载外部类时,Codeigniter会将该类的实例放在名为“加载的类”的变量中,因此您需要以这种方式访问

由于您随后将以静态方式调用它,因此我建议删除CI loader方法,只包含类:

public function barcode_gen()
{
   require_once('./application/libraries/Zend/Barcode/Barcode.php');
   //adjust the above path to the correct location
    $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
    $rendererOptions = array();
   Zend_Barcode::factory('code39', 'image', $barcodeOptions, $rendererOptions)->render();
}

请注意,Damien Pirsy(以及其他类似or的人)的代码是针对Zend版本1而不是版本2的。 如果下载版本2,则会出现
致命错误:找不到类“Zend_Barcode”


我想它可能也会帮助其他人。

我也有同样的问题,这就是我所做的使它工作的事情(我使用的是CI2和ZF2)。首先,集成CI2和ZF2。并在my Barcode_gen函数中包含Zend Barcode命名空间

function barcode_gen() {
    $this->load->library('Zend');
    $this->zend->load('Zend/Barcode/Barcode');

    $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
    $rendererOptions = array();
    \Zend\Barcode\Barcode::factory('code39', 'image', $barcodeOptions, $rendererOptions)->render();
}
--
更新
我使用的是来自的HMVC体系结构,Loader类能够从Zend加载必要的文件,这是我的barcode_gen

function barcode_gen() {
    $barcodeOptions = array('text' => 'ZEND-FRAMEWORK');
    $rendererOptions = array();
    \Zend\Barcode\Barcode::factory('code39', 'image', $barcodeOptions, $rendererOptions)->render();
}
这个怎么样? zend条形码库位于第三方文件夹下

function gen_barcode($product_code = NULL, $bcs = 'code39', $height = 60, $text = 1) { $drawText = ($text != 1) ? FALSE : TRUE; $this->load->library('zend'); $this->zend->load('Zend/Barcode'); $barcodeOptions = array('text' => $product_code, 'barHeight' => $height, 'drawText' => $drawText); $rendererOptions = array('imageType' => 'png', 'horizontalPosition' => 'center', 'verticalPosition' => 'middle'); $imageResource = Zend_Barcode::render($bcs, 'image', $barcodeOptions, $rendererOptions); return $imageResource; } 函数gen\u条形码($product\u code=NULL,$bcs='code39',$height=60,$text=1){ $drawText=($text!=1)?FALSE:TRUE; $this->load->library('zend'); $this->zend->load('zend/Barcode'); $barcodeOptions=array('text'=>$product\U code,'barHeight'=>$height,'drawText'=>$drawText); $renderoptions=array('imageType'=>'png','horizontalPosition'=>'center','verticalPosition'=>'middle'); $imageResource=Zend_Barcode::render($bcs,'image',$barcodeOptions,$RenderOptions); 返回$imageResource; }
这也不起作用,它只会返回此错误
致命错误:找不到类“Zend_Barcode”…
PasteBin我看到类名是Barcode,请使用
Barcode::factory()
谢谢您的回复,但也没有。这真的让我很困惑。如何以pdf格式打印条形码,你有什么解决方案吗?我发现
致命错误:找不到类“Zend\barcode\ObjectPluginManager”
。请问您使用的是什么版本?Zendf2.2?我完全遵循了你写的内容,包括你发布的链接。我使用的是ZF 2.1.4,我用ZF 2.2.1替换了我的ZF,它仍然有效,也许我错过了编写一些步骤,让我检查一下,我刚刚意识到我使用的是HMVC体系结构,并且Loader类能够从Zend加载必要的文件。我甚至不必使用Zend加载语句(barcode_gen函数的第1行和第2行)谢谢,我已经解决了这个问题