My multi-lingual site already successfully uses the "array" method of Zend translations.
I want to convert from that method to the "gettext" method because I've read that gettext is superior.
I've tried using http://docs.translatehouse.org/projects/translate-toolkit/en/latest/commands/php2po.html but can't get it to work.
I think it's not meant to handle Zend arrays as the input.
My Zend file (which works) looks like this:
<?php
return array(
'choose your favorite stores' => 'Choose your %1$sfavorite stores%2$s',
'P.S. If you ever have question' => 'P.S. If you ever have questions, %1$semail us%2$s any time.',
'You can also find quick answer' => 'You can also find quick answers on our %1$sHelp page%2$s.',
'Earn X cash' => '%1$sEarn 1-30%% cash back%2$s, get money-saving coupons, and find the best price on every purchase at %3$s2,500+ stores%4$s.'
);
(But it's much longer, and I have multiple languages, each in their own PHP file.)
With the snippet you have given the conversion works for me.
I'm using a Translate Toolkit version from git master, maybe you should try that.