str_printf is not for unicode. But you can just add the result to an unicode string with str_cat. The manual says that str_cat requires strings of the same type, but I believe it can add ASCII to Unicode - just try it.