Endroid\QrCode\QrCode::setErrorCorrection PHP Method

setErrorCorrection() public method

Set QR Code error correction level.
public setErrorCorrection ( mixed $error_correction ) : QrCode
$error_correction mixed Error Correction Level
return QrCode
    public function setErrorCorrection($error_correction)
    {
        if (!is_numeric($error_correction)) {
            $level_constant = 'Endroid\\QrCode\\QrCode::LEVEL_' . strtoupper($error_correction);
            $error_correction = constant($level_constant);
        }
        if (in_array($error_correction, $this->error_corrections_available)) {
            $this->error_correction = $error_correction;
        }
        return $this;
    }

Usage Example

 /**
  * @Route("/{text}.{extension}", name="endroid_qrcode", requirements={"text"="[\w\W]+", "extension"="jpg|png|gif"})
  */
 public function generateAction(Request $request, $text, $extension)
 {
     $qrCode = new QrCode();
     $qrCode->setText($text);
     if ($request->get('size') !== null) {
         $qrCode->setSize($request->get('size'));
     }
     if ($request->get('padding') !== null) {
         $qrCode->setPadding($request->get('padding'));
     }
     if ($request->get('error_correction_level') !== null) {
         $qrCode->setErrorCorrection($request->get('error_correction_level'));
     }
     if ($request->get('foreground_color') !== null) {
         $qrCode->setForegroundColor($request->get('foreground_color'));
     }
     if ($request->get('background_color') !== null) {
         $qrCode->setBackgroundColor($request->get('background_color'));
     }
     if ($request->get('label') !== null) {
         $qrCode->setLabel($request->get('label'));
     }
     if ($request->get('labelFontSize') !== null) {
         $qrCode->setLabelFontSize($request->get('labelFontSize'));
     }
     $qrCode = $qrCode->get($extension);
     $mime_type = 'image/' . $extension;
     if ($extension == 'jpg') {
         $mime_type = 'image/jpeg';
     }
     return new Response($qrCode, 200, array('Content-Type' => $mime_type));
 }
All Usage Examples Of Endroid\QrCode\QrCode::setErrorCorrection