Skip to content
This repository has been archived by the owner on Aug 9, 2018. It is now read-only.
/ py2php Public archive
forked from reusee/py2php

A python to php translator, compile python script to php

Notifications You must be signed in to change notification settings

yaskhan/py2php

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

py2php

транслятор с языка программирования Python в PHP

TODO

  • Import и пасинг загруженного кода
  • Import from
  • Import alias
  • TryExcept
  • TryFinally
  • function vararg
  • function kwarg
  • Nested функций и классы
  • Добавлять в начало функций static и abstract если есть в декораторах @abstract, @static
  • писать при вызове статических и константных аттрибутов «::»(Paamayim Nekudotayim) вместо «->», а это обычно аттрибуты написанные прописными буквами (константы), или методы с декоратором @staticmethod
  • генерировать интерфейс класс если у класса есть декоратор interface
  • доработать lambda
  • доработать for
  • yeld
  • with
  • написать консольную утилиту для конвертаций XML или JSON, созданный документогенераторами PHP, в Python (генератор оберток)

Пример

Код:

class Asd(A):
    f = []
    g = ""
    h = 0
    def __init__(self):
        self.g = True
        
    def _foo(self):
        self.publiddsds(a,d)
    
    def publiddsds(self):
        pass

переведется в:

class Asd extends A {
    protected $f = array();
    protected $g = '';
    protected $h = 0;

    function __construct () {
        $this->g = true;
    }

    protected function _foo() {
        $this->publiddsds($a, $d);
    }

    public function publiddsds() {
        ;
    }
}

Как пользоваться генератором оберток?

Установите phpDocumentator2 Используйте ее для генераций XML файлов:

phpdoc -d "./src" -t "./folder_for_xml" --template="XML"

После этого:

python wrapper_gen.py -i "./folder_for_xml/structure.xml" -o "./wrapper"

Лицензия

MIT

About

A python to php translator, compile python script to php

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.9%
  • PHP 0.1%