PHP扩展开发详细教程
在几种情况下,我们会需要进行PHP扩展开发:
1、PHP本身无法访问的资源或是调用,
2、通过扩展的方式可以实现处于性能和效率的考虑,
3、用C实现会更好
4、处于商业或代码保护考虑,将代码封装起来
5、为了更深入的了解PHP,从这里入门
假设有这么一个扩展,提供一个叫ccvita_string的函数。下面详细介绍怎么样制作这样一个PHP扩展:
第一步、生成代码
PHP为了扩展开发的方便,提供了一个类似代码生成器的工具ext_skel,具体可以参见说明。首先我们创建一个文件scutephp.skel,它的内容为
string scutephp_string(string str)
就是告诉ext_skel这个东西,我们要做的扩展里面有个函数叫scutephp_string。然后执行
cd usr/src/php-5.3.8/ext/<br />./ext_skel --extname=scutephp --proto=scutephp.skel<br />cd scutephp/
这时候,ccvita这个扩展的代码框架就已经出来了。
第二步、修改配置
然后修改config.m4文件将10、11、12三行最前面的dnl删除掉,就是将dnl PHP_ARG_WITH(ccvita, for ccvita support,<br />dnl Make sure that the comment is aligned:<br />dnl [ --with-scutephp Include scutephp support])
修改为
PHP_ARG_WITH(scutephp, for scutephp support,<br />Make sure that the comment is aligned:<br />[ --with-scutephp Include scutephp support])
第三步、实现功能
修改源码scutephp.c文件找到将scutephp_string这个函数修改为
PHP_FUNCTION(scutephp_string)<br />{<br /> char *str = NULL;<br /> int argc = ZEND_NUM_ARGS();<br /> int str_len;<br /> char *result;<br /><br /> if (zend_parse_parameters(argc TSRMLS_CC, "s", &str, &str_len) == FAILURE) <br /> return;<br /><br /> str_len = spprintf(&result, 0, "<a href="%.78s">Link</a>", str);<br /> RETURN_STRINGL(result, str_len, 0); <br />}
第四步、编译扩展
保存后,开始编译/usr/local/php/bin/phpize<br />./configure --with-php-config=/usr/local/php/bin/php-config<br />make
第五步、添加扩展
这时候,一切顺利的话,该扩展已经在modules/scutephp.so这个位置了。下面就是将这个扩展加入到PHP中去,让我们PHP程序可以调用到。cp modules/scutephp.so /usr/local/php/ext/<br />vim /usr/local/php/etc/php.ini<br />extension=/usr/local/php/ext/scutephp.so #在php.ini文件最后增加这一行<br />service php-fpm restart #重启PHP服务<br />cp ccvita.php /data/www/wwwroot/default/
接下来就可以访问scutephp.php这个文件,测试扩展了。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Ist vue.js leicht zu erlernen? Die Antwort ist, dass es sehr einfach zu erlernen und in andere Bibliotheken oder bestehende Projekte zu integrieren ist. Wie verwendet man Vue? Heute empfiehlt Ihnen die chinesische PHP-Website die neuesten 5 kostenlosen Vue.js-Video-Tutorials im Jahr 2023, damit jeder sie lernen kann.

Das Folgende ist ein Video-Tutorial des Front-End-UI-Frameworks – Laui. Es ist nicht erforderlich, es von Cloud-Disk-Plattformen von Drittanbietern wie Xunlei und Baidu Cloud herunterzuladen. Alle Videos können kostenlos online angesehen werden. Die Tutorials beginnen von der Tiefe bis zur Tiefe, und diejenigen mit Front-End-Grundkenntnissen können es lernen, von der Installation bis hin zu Fallerklärungen, sie sind umfassend und detailliert, um Ihnen zu helfen, das Laui-Framework schneller und besser zu beherrschen!

Deepseekai Tool User Guide und FAQ Deepseek ist ein leistungsstarkes KI -Intelligent -Tool. FAQ: Der Unterschied zwischen verschiedenen Zugriffsmethoden: Es gibt keinen Unterschied in der Funktion zwischen Webversion, App -Version und API -Aufrufen, und App ist nur ein Wrapper für die Webversion. Die lokale Bereitstellung verwendet ein Destillationsmodell, das der Vollversion von Deepseek-R1 geringfügig unteren ist, das 32-Bit-Modell theoretisch 90% Vollversionsfunktion. Was ist eine Taverne? SillyTervern ist eine Front-End-Oberfläche, die das KI-Modell über API oder Ollama anruft. Was ist Breaking Limit

Das Folgende ist ein Video-Tutorial des PHP-Asynchron-Kommunikations-Frameworks Swoole. Es ist nicht erforderlich, es von Drittanbieter-Plattformen wie Xunlei und Baidu Cloud herunterzuladen. Alle können kostenlos online angesehen werden. Die Tutorials reichen von einfach bis tiefgreifend und können von Personen mit Grundkenntnissen in PHP erlernt werden. Von der Installation bis hin zu Fallerklärungen sind sie umfassend und detailliert, damit Sie das Swoole-Framework schneller und besser beherrschen können!

Dieses Mal hat die chinesische PHP-Website relevante Video-Tutorials, chinesische Handbücher und verwandte ausgewählte Artikel für alle integriert, alles kostenlos! ! ! Durch die von uns geteilten Videos können Sie die Tutorial-Videos jederzeit und überall kostenlos ansehen, ohne dass ein Download von Thunder oder Baidu Netdisk erforderlich ist.

Viele Webmaster verwenden PHPCMS für die sekundäre Entwicklung und Website-Erstellung. Die chinesische PHP-Website hat speziell ein PHPCMS-Video-Tutorial gestartet. Sie können das Video-Tutorial jederzeit und überall kostenlos ansehen, ohne es von Baidu Netdisk herunterladen zu müssen.

DedeCMS ist für seine Einfachheit, Praktikabilität und Open Source bekannt. Es ist das bekannteste PHP-Open-Source-Website-Managementsystem und das PHP-CMS-System mit den meisten Benutzern. Nach Jahren der Entwicklung ist die aktuelle Version die beliebteste Eins in Bezug auf Funktionen oder Benutzerfreundlichkeit, es gab erhebliche Entwicklungen und Fortschritte.

Die chinesische PHP-Website hat Inhalte zum Empire CMS-Video-Tutorial für jedermann zusammengestellt. Enthält Imperial CMS-Installationsvideo-Tutorials, Imperial CMS-Entwicklungshandbücher, Imperial CMS-Vorlagenressourcen und einige technische Artikel zu Imperial CMS.
