.po to.mo converter in php?

I need a PHP script that can convert .po (Portable Object) as a .mo (Machine Object) file. is any script available in php?

byte +------------------------------------------+ 0 | magic number = 0x950412de | | | 4 | file format revision = 0 | | | 8 | number of strings | == N | | 12 | offset of table with original strings | == O | | 16 | offset of table with translation strings | == T | | 20 | size of hashing table | == S | | 24 | offset of hashing table | == H | | . . . (possibly more entries later) . . . | | O | length & offset 0th string ----------------. O + 8 | length & offset 1st string ------------------. ... ... | | O + ((N-1)*8)| length & offset (N-1)th string | | | | | | | T | length & offset 0th translation ---------------. T + 8 | length & offset 1st translation -----------------. ... ... | | | | T + ((N-1)*8)| length & offset (N-1)th translation | | | | | | | | | | | H | start hash table | | | | | ... ... | | | | H + S * 4 | end hash table | | | | | | | | | | | | NUL terminated 0th string <----------------' | | | | | | | | | NUL terminated 1st string <------------------' | | | | | | ... ... | | | | | | | NUL terminated 0th translation <---------------' | | | | | NUL terminated 1st translation <-----------------' | | ... ... | | +------------------------------------------+ 

Can I make a mo file from this information?

+3
source share
2 answers

I have not tried it, but it looks like this PEAR package can help you. This is not supported, but maybe you can become a new maintainer?

If you can read Python, then you can take a hit at converting their msgfmt.py script to PHP. This is a total of 200 lines.

+2
source

You can run msgfmt with exec() or similar. I do not know if there is a way only for PHP.

+4
source

Source: https://habr.com/ru/post/903396/


All Articles