タイトルどおり Promise までつけてみました

といっても JavaScript 版のを移植しただけです

phjs.php