J'ai quelques petites bibliothèques et wrappers écrits en C (pas en C++) que je voudrais mettre à la disposition de PHP via des extensions. J'ai lu plusieurs tutoriels sur writing proper PHP extensions et cela ne semble pas difficile, mais je ne veux pas les tracas de maintenir les extensions en plus des bibliothèques.SWIG pour faire des extensions PHP, avez-vous essayé?
J'ai lu que SWIG supporte les extensions de construction compatibles avec Zend PHP 5, ce qui est parfait pour moi. Cependant, le support semble être bêta selon la documentation SWIG.
Mes bibliothèques sont assez communs, comme par exemple méta d'utilisation dans 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);
}
Quelqu'un at-il des expériences à partager avec l'aide SWIG pour faire des extensions pour les bibliothèques aussi simple que cela? Quelqu'un connaît-il des projets libres/open source écrits en C qui utilisent SWIG pour faire des extensions php comme une partie optionnelle de la construction?
Merci d'avance, j'espère avoir un retour. Si c'est positif, je vais juste consacrer un peu de temps à vraiment connaître SWIG .. sinon, je passerai le temps à faire les extensions à la main.
Je pense que je vais essayer d'essayer SWIG plus tard sur des choses plus simples. Pour l'instant, je vais juste étudier les implémentations curl et mysql existantes, qui correspondent à mes plus petites bibliothèques en complexité (en ce qui concerne PHP). –