在windows平台上构建自己的PHP(php5.3+)_PHP教程
这是一篇翻译的文章,原文参见:https://wiki.php.net/internals/windows/stepbystepbuild
顺便提一句,wiki.php.net有很多精彩的内容,想深入了解php的同学千万不要错过:)
准备工作
在windows平台上编译php,需要三样准备工作:
1,合适的编译环境,包括安装一个编译器、正确的SDK以及对应的binary tools
2,编译PHP需要用到的第三库、头文件
3,PHP源代码
构建环境
这是在windows平台上编译php最困难的部分,因为建立这样的编译环境需要大量的磁盘空间,可能会有数G
需求:
- Microsoft Visual C++,官方的PHP版本支持VC++6.0和VC++9.0(即VC++2008),Express版本的也行。MinGW和其他的编译器是不被支持的。
- 正确的windows SDK 或者Platform SDK,SDK需要与VC版本对应,详见https://wiki.php.net/internals/windows/windowssdk
- 编译时用到的binary tools,详见http://windows.php.net/downloads/php-sdk/
注:
最新的php5.5可以用VC++9或者VC++11编译,不过5.5尚未正式发布。
如果使用的是VC6,则需要安装Windows Server Feb.2003 SDK,如果使用的VC9则需安装SDK6.1
构建步骤
1,安装vs2008
2,安装windows sdk 6.1
3,获得php 5.3源码,可以从此处获取snapshot (先不要解压)
4,创建文件夹c:\php-sdk
5,解压binary-tools.zip 至c:\php-sdk文件夹中。binary-tools.zip可以从此处获取(http://windows.php.net/downloads/php-sdk/)。解压后C:\php-sdk中应该包含bin,script,share等子目录。
6,打开windows sdk 6.1 shell,直接下述指令:
PHP 5.2, 5.3 and 5.4:
setenv /x86 /xp /release
PHP 5.5+:
setenv /x86 /2008 /release
7,
cd c:\php-sdk\
8,
bin\phpsdk_setvars.bat
9,
bin\phpsdk_buildtree.bat php53dev
10,现在解压第3步中下载的snapshot至C:\php-sdk\php53dev\vc9\x86文件夹中。解压完成之后,目录路径形如C:\php-sdk\php53dev\vc9\x86\php5.3-xyz。
11,在C:\php-sdk\php53dev\vc9\x86中,有一个deps文件夹。下载编译所依赖的一些libraries,并且解压至其中。这些libraries可以从http://wiki.php.net/internals/windows/libs获得。确保解压完成之后,deps下包含/include和/lib目录。(注:笔者直接从http://windows.php.net/downloads/php-sdk/下载了deps-5.3-vc9-x86.7z可以顺利编译通过)
12,继续在windows-sdk-shell中运行
cd C:\php-sdk\php53dev\vc9\x86\php5.3-xyz
13,
buildconf
14,查看编译选项
configure --help
15,根据自己的需要输入构建指令:
configure --disable-all --enable-cli 编译最简单的PHP内核并且只支持cli运行方式
(注: 一些扩展需要lib,头文件甚至其他程序,详见libs ,下载自己所需的版本并且解压至deps文件夹c:\php-sdk\php53\vc9\x86\deps)
16,
nmake
17,如果你需要压缩编译好的php文件,继续执行:
nmake snap
18,编译完的PHP位于C:\php-sdk\php53dev\vc9\x86\php5.3-SNAPSHOTTIME\Release_TS目录。
修改并重新编译
1,清除上次的编译结果
nmake clean
2,如果你需要重新config
buildconf --force
3,输入新的configure配置
configure --disable-all --enable-cli --enable-$remains
4,编译
nmake
如果只编译最精简的PHP(仅enable-cli),编译成功之后,可以观察一下编译了哪些EXT,SAPI:
除了standard(标准扩展),这个php版本只含有date,ereg,pcre,reflection,SPL几个扩展,它们的源码都可以在php-src/ext中找到。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

PiNetwork节点详解及安装指南本文将详细介绍PiNetwork生态系统中的关键角色——Pi节点,并提供安装和配置的完整步骤。Pi节点在PiNetwork区块链测试网推出后,成为众多先锋积极参与测试的重要环节,为即将到来的主网发布做准备。如果您还不了解PiNetwork,请参考Pi币是什么?上市价格多少?Pi用途、挖矿及安全性分析。什么是PiNetwork?PiNetwork项目始于2019年,拥有其专属加密货币Pi币。该项目旨在创建一个人人可参与

需下载 Gate.io 应用程序以开启加密货币之旅?本指南详细列出适用于 iOS、Android 和 Windows 设备的最新版本下载步骤。只需访问官方网站,找到下载链接并根据您的设备选择相应选项。对于 iOS,将直接转到 App Store,而 Android 和 Windows 用户将下载 APK 或安装程序进行手动安装。完成安装后,您就可以启动应用程序并设置您的帐户,踏入加密货币世界。

在Node.js环境中解决第三方接口返回403的问题当我们在使用Node.js调用第三方接口时,有时会遇到接口返回403错误�...

静态绑定(static::)在PHP中实现晚期静态绑定(LSB),允许在静态上下文中引用调用类而非定义类。1)解析过程在运行时进行,2)在继承关系中向上查找调用类,3)可能带来性能开销。

OKX交易平台可以通过移动设备(Android和iOS)和电脑端(Windows和macOS)进行下载。1. Android用户可从官方网站或Google Play下载,需注意安全设置。2. iOS用户可通过App Store下载,或关注官方公告获取其他方式。3. 电脑用户可从官方网站下载相应系统的客户端。下载时务必确保使用官方渠道,并在安装后进行注册、登录和安全设置。

选择合适的比特币看盘软件至关重要,它能帮助投资者实时掌握市场行情,做出更明智的投资决策。本文将指导您如何选择,涵盖个人需求评估(交易频率、分析深度、信息需求及预算)、软件类型选择(交易所界面、专业软件、行情网站/APP)、核心功能考量(数据可靠性、图表工具、自定义设置、社区交流及平台兼容性)以及选择方向建议(成熟金融平台、加密货币聚合平台、社区推荐软件)等方面。 最终,建议您多尝试几款软件并进行比较,选择最适合自身需求的工具。 请记住,软件仅为辅助工具,投资需谨慎,风险自担。

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

欢迎下载 Bitget 应用程序,提供安全可靠的数字资产交易服务。通过我们先进的平台,您可以轻松管理您的投资组合,享受流畅且用户友好的交易体验。Bitget 应用程序提供高流动性和深度市场,确保您获得最佳执行价格。我们致力于为用户创造一个安全、透明的交易环境,并始终优先考虑您的资金安全。
