在CakePHP控制器中输出图像\条形码

在CakePHP控制器中输出图像\条形码,cakephp,pear,Cakephp,Pear,我想在CakePHP控制器中输出由PEAR::Image_条形码生成的条形码: public function gen_bc($bc_text = null) { $this->autoRender = false; require_once("Image/Barcode.php"); $bc = new Image_Barcode; $bc->draw($bc_text, "Code39", "jpg"); exit(); } 但是@all

我想在CakePHP控制器中输出由PEAR::Image_条形码生成的条形码:

public function gen_bc($bc_text = null)
{
    $this->autoRender = false;
    require_once("Image/Barcode.php");
    $bc = new Image_Barcode;
    $bc->draw($bc_text, "Code39", "jpg");
    exit();
}

但是@all没有输出。

您需要捕获输出。使用ob_start()。否则,屏幕上将只显示条形码图像

require_once('Image/Barcode.php');

public function gen_bc($bc_text){
    ob_start();
    $img = Image_Barcode::draw( $bc_text ,'code128', 'png', false);
    $cif_data = ob_get_contents ();
    ob_end_clean();
}
如果出现错误,请尝试纠正错误:

require_once('Image/Barcode.php');

error_reporting(0);

public function gen_bc($bc_text){
    ob_start();
    $img = Image_Barcode::draw( $bc_text ,'code128', 'png', false);
    $cif_data = ob_get_contents ();
    ob_end_clean();
}