views:

686

answers:

4

Hi all,

I have to convert all my echo/print string from my php source code file to PO file(for the language translation), is there any batch convector available for the same.

A: 

Sadly, I do not think such a tool exists. If you find one it will likely be limited in functionality

This is due to ability of php to intermingle with html. It is hard to be able to know what exactly should be included in a particular gettext file.

If you only use "echo" statements to send content to the browser and you are never mixing html and php, then it is pretty simple to write up a script to parse that out.

HTH, -FT

ftrotter
A: 

You need http://www.poedit.net/

You can use Poedit to scan source code for translatable strings.

FractalizeR
It will search for output inside specified functions, not after an `echo` or `print` as far as I know.
chelmertz
A: 

How I do this:

  • make gettext run on your server
  • setup a translation adapter (for example Zend_Translate with gettext adapter)
  • use a good search tool to find all strings in your code and wrap them with something like $translationObject->translate(). Often the method is wrapped to be called __(). This will be at least partly handwork in most cases since you will have various forms of strings which you will maybe also want to split up into shorter units
  • install poEdit and configure it to parse for 'translate(' or '__('
  • send your resulting po-Files to the human translators and instruct them how to use poEdit
  • load the translations and generate mo-files which are used by the adapter
tharkun
A: 

Yes i got the answer

There is a method to extract all the string from a give source file for a folder. Here is the link you can check

Extract the strings from source code for Translation(for po file)

Poedit: A cross-platform PO to MO converter and PO file editor

coderex