PHP Extension
PHP Extension
Extract data:image/png;base64 from HTML
See more Base64 Examples
Demonstrates how to extract base64 image data from HTMl and save to files.Chilkat PHP Extension Downloads
<?php
include("chilkat.php");
$success = false;
$sb = new CkStringBuilder();
$bd = new CkBinData();
$sbFilename = new CkStringBuilder();
$index = 1;
$success = $sb->LoadFile('qa_data/html/oresp body.txt','utf-8');
// Assume success.
print 'length = ' . $sb->get_Length() . "\n";
$mayHaveMore = true;
while ($mayHaveMore == true) {
// Get the base64 between the 1st occurrence "data:image/png;base64," and "'"
$sBase64 = $sb->getBetween('data:image/png;base64,',''');
// If nothing is found, then we'll exit the loop because there are no more.
$mayHaveMore = $sb->get_LastMethodSuccess();
if ($sb->get_LastMethodSuccess() == true) {
// Found something.
// Load into bd and save.
$success = $bd->LoadEncoded($sBase64,'base64');
$sbFilename->SetString('qa_output/png_');
$sbFilename->AppendInt($index);
$sbFilename->Append('.png');
$bd->WriteFile($sbFilename->getAsString());
// Replace "data:image/png;base64" with "data:image-png;base64" so the next iteration finds the next occurrence.
$sb->ReplaceFirst('data:image/png;base64','data:image-png;base64');
}
$index = $index + 1;
}
// Restore our replacements..
$count = $sb->Replace('data:image-png;base64','data:image/png;base64');
print 'All done.' . "\n";
?>