データURL化(base64)した画像ファイルをimagickで扱う方法

HTML5に対応したブラウザが多くなってきたので
readAsDataURL+AjaxPHPに画像ファイルを受け渡す処理なんかが
ぽつぽつ増えてきたのではないでしょうか


そうやって受け渡したデータURLを
はじめ、以下のように処理したのですが
エラーで読み込めず困っていました

$tmp = DATAURL;
$tmp = preg_replace('/^.*?base64/','',$tmp);

$img = base64_decode($tmp);

$im = new Imagick($img);
$im->writeImages('test.jpg', TRUE);

それで、いろいろ調べたら解決したので
同じように困っている方、御参考下さい。
変数に格納されているbase64デコードした画像データは
イメージマジックにreadimageblob()で読み込みます。

$tmp = DATAURL;
$tmp = preg_replace('/^.*?base64/','',$tmp);

$img = base64_decode($tmp);

$im = new Imagick();
$im->readimageblob($img)
$im->writeImages('test.jpg', TRUE);