У меня есть несколько небольших библиотек и оболочек, написанных на C (не на C ++), которые я хотел бы сделать доступными для PHP через расширения. Я прочитал несколько руководств по написанию правильных расширений PHP , и это не кажется трудным, однако я не хочу, чтобы в дополнение к библиотекам поддерживались расширения.
Я читал, что SWIG поддерживает сборочные расширения, совместимые с Zend PHP 5, что идеально подходит для меня. Однако в соответствии с документацией SWIG поддержка кажется бета-версией.
Мои библиотеки довольно распространены, как мета-пример использования в C:
int main(void)
{
struct libfoo *foo;
char **tmp;
foo = foo_init();
if (foo == NULL) {
fprintf(stderr, "Could not allocate foo\n");
return 1;
}
tmp = foo_parse(foo, "/foo/foo.txt");
......
foo_finit(foo);
}
У кого-нибудь есть опыт, которым можно поделиться с помощью SWIG, чтобы сделать расширения для библиотек такими простыми? Кто-нибудь знает о каких-либо проектах с открытым исходным кодом, написанных на C, которые используют SWIG для создания расширений php в качестве необязательной части сборки?
Заранее спасибо, надеюсь получить отзыв. Если это хорошо, я просто посвящу некоторое время тому, чтобы по-настоящему познакомиться с SWIG ... если нет, я потрачу время только на создание расширений вручную.