Sample code for 30+ languages & platforms
PHP Extension Requires Chilkat v11.7.0+

Embed a QR Code in HTML as a Data URI

See more QR Code Examples

Demonstrates putting a QR code directly into an HTML page or HTML email with no separate image file. The base64 PNG returned by QrCode becomes the src of an img tag as a data URI, which is the MIME type from outputs[0].mimeType followed by the base64 from outputs[0].base64.

Chilkat PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

//  This example requires the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

$json = new CkJsonObject();
$json->UpdateString('payload.text','https://www.chilkatsoft.com/');
$json->UpdateInt('render.moduleSize',5);

$fmt = new CkFormats();
$jsonOut = new CkJsonObject();
$success = $fmt->QrCode('generate',$json,$jsonOut);
if ($success == false) {
    print $fmt->lastErrorText() . "\n";
    exit;
}

//  A data URI has the form  data:<MIME type>;base64,<base64 data>
$sbHtml = new CkStringBuilder();
$sbHtml->Append('<html><body><p>Scan to visit chilkatsoft.com</p><img alt=\'QR code\' width=\'');
$sbHtml->AppendInt($jsonOut->IntOf('outputs[0].width'));
$sbHtml->Append('\' height=\'');
$sbHtml->AppendInt($jsonOut->IntOf('outputs[0].height'));
$sbHtml->Append('\' src=\'data:');
$sbHtml->Append($jsonOut->stringOf('outputs[0].mimeType'));
$sbHtml->Append(';base64,');
$sbHtml->Append($jsonOut->stringOf('outputs[0].base64'));
$sbHtml->Append('\'></body></html>');

$success = $sbHtml->WriteFile('qa_output/qr_page.html','utf-8',false);
if ($success == false) {
    print $sbHtml->lastErrorText() . "\n";
    exit;
}

print 'image: ' . $jsonOut->IntOf('outputs[0].width') . ' x ' . $jsonOut->IntOf('outputs[0].height') . ' pixels' . "\n";
print 'HTML length: ' . $sbHtml->get_Length() . "\n";

//  The page, as a browser shows it:

//  image

//  Sample output:

//  image: 185 x 185 pixels
//  HTML length: 1211

?>