<?php

$str = 'bq. sometext

[quote author="author" date="unix time in secs"]
    some text
[/quote]';

$str = preg_replace(
    '#bq\. (\S+)#',
    '<blockquote author="author" timestamp="unix time in secs">$1</blockquote>',
    $str
);

$str = preg_replace(
    '#\[quote(?=[^\]]*author="([^"]*))(?=[^\]]*date="([^"]*))[^\]]*\](.*?)\[/quote\]#s',
    '<blockquote author="$1" timestamp="$2">$3</blockquote>',
    $str
);

echo $str;