thanks for the tip @bruno17
in case anyone else got the same / similar question as me
/*
use like this [[*publishedon:strtotime:dateMonthLang=`zh`]]
//snippet called dateMonthLang
*/
$input = !empty($input) ? $input : '';
$options = !empty($options) ? $options : 'en';
$formatter = new IntlDateFormatter($options, NULL, NULL);
$formatter->setPattern('MMMM');
$output= $formatter->format($input);
return $output;