Создание и использование компонентов расширения php под окнами

среда разработки

1.win 7 32-bit
2.Visual Studio 2019 (установлены компоненты для настольной разработки с использованием C++)

Подготовка

1.php-sdk-binary-tools(v2.1.9)
2.php源码(v8.0.17)
3.php x86 Non Thread Safe (v8.0.17)

Сделать компоненты

1. Сгенерируйте исходный код компонента

cd php-8.0.17-src/ext // 进入php源码的ext目录
php ext_skel.php --ext myext // 生成组件源码

2. Откройте среду компиляции

cd php-sdk2.1.9  // 打开生成组件工具
phpsdk-vc15-x86.bat // 运行工具

3. Генерация компонентов

buildconf
configure --disable-all --enable-cli --enable-myext=shared --disable-zts
nmake

Здесь необходимо объяснить два момента: один из них —enable-myext=shared, причина, по которой общий доступ заключается в создании отдельного файла dll с общим доступом, а другой —disable-zts — это компонент dll, который генерирует небезопасные файлы. потоки.

На данный момент сгенерирован компонент php_myext.dll, в php-8.0.17-src\Release, если не добавить --disable-zts, он будет в Release_TS.

тестовый компонент

1. Откройте php-8.0.17-nts-Win32-vs16-x86
2. Скопируйте php_myext.dll в каталог ext
3. Измените php.ini-production на php.ini и измените следующие параметры.

extension_dir = "ext"
extension=myext

4. Создайте новый тестовый файл test.php

$myext = extension_loaded('myext');
var_dump($myext);
test1();
$res = test2();
var_dump($res);

5. Успешен ли тест

./php test.php

Все вышеперечисленные каталоги основаны на php-8.0.17-nts-Win32-vs16-x86.

Меры предосторожности

1. Разные версии PHP соответствуют разным Visual Studio.
Visual C++ 14.0 (Visual Studio 2015) for PHP 7.0 or PHP 7.1.
Visual C++ 15.0 (Visual Studio 2017) for PHP 7.2, PHP 7.3 or PHP 7.4.
Visual C++ 16.0 (Visual Studio 2019) for master.

После завершения установки не забудьте установить компонент "Desktop Development with C++". Не забудьте выбрать Visual Studio в соответствии с версией разработки php, иначе сгенерированные компоненты будут недоступны.

2. Выбор php-sdk-binary-tools

Текущая последняя версия — 2.2+ Причина выбора 2.1.9 заключается в том, что для версии выше 2.2 требуется 64-разрядная операционная система.

справочная ссылка

1. Создайте свой собственный PHP для Windows
2. PHP для Windows
3. php-sdk-binary-tools
4. Visual Studio 2019

Supongo que te gusta

Origin blog.csdn.net/a7442358/article/details/123707119
Recomendado
Clasificación