PHP对扩展的编写要求非常严格。如果没有按照官方文档,使用对应的PHP版本,PHP源码版本,以及Visual Studio版本,即使能够在Windows上成功编译DLL,也会因为版本不匹配报错,从而无法运行。之前只写了如何编写扩展,这里会分享下如何使用Nginx+PHP+DBR(Dynamsoft Barcode Reader)来搭建一个简单的Web条形码应用。
翻译:yushulx
软件下载
步骤1:PHP Barcode扩展实现
使用Dynamsoft Barcode SDK来快速创建一个PHP扩展php_dbr.dll。具体步骤可以参考:使用C/C++编写PHP Extension。
步骤2:PHP扩展部署和环境配置
把生成的php_dbr.dll拷贝到%PHP%\ext中。
把DynamsoftBarcodeReaderx86.dll拷贝到%PHP%根目录下。
打开%php%\php.ini文件添加扩展描述:
extension=php_dbr.dll
如果有文件上传的需求,可以修改一下最大文件上传的尺寸:
upload_max_filesize=20M
步骤3:如何在Nginx中配置PHP
为了让Nginx支持PHP,打开%nginx%\conf\nginx.conf添加:
如果上传文件尺寸太大,会出现下面的错误:
nginx 413 Request Entity Too Large
这个时候需要修改Nginx配置:
client_max_body_size 50M;
步骤4:Web条形码应用
创建index.php:
为了支持tiff文件的加载显示,我们可以使用tiff js library.。
创建dbr.php用于接收上传文件,并且调用PHP条形码扩展接口来解码:
运行php-cgi:
%php%\php-cgi.exe -b 127.0.0.1:9000 -c %php%\php.ini
运行Nginx:
%nginx%\nginx.exe
打开localhost:8080/index.php:做测试:
源码