PHP 3 文档已从 PHP 手册中移除,并放置在此处以供历史参考。我们尝试保留所有文本,尽管很可能有一些文本丢失。最后一个 PHP 3 版本 (3.0.18) 于 2000 年 10 月 20 日发布。
请参阅 PHP 博物馆 获取下载,并阅读 历史 以获取有关 PHP 3 的更多信息。
大多数指令以 php3_ 为前缀,而不是 php_。本文档未提及这些差异。
FTP 配置选项从 --with-ftp 更改为 --enable-ftp
E_ALL 的值为 63。
asp_tags 指令是在 PHP 3.0.4 中添加的。
E_* 常量在 php3.ini 中没有意义,但数字值有意义。
--with-imsp[=DIR] 包含 IMSP 支持(DIR 是 IMSP 的包含目录和 libimsp.a 目录)。
--with-mck[=DIR] 包含 Cybercash MCK 支持。DIR 是 cybercash mck 构建目录,默认为 /usr/src/mck-3.2.0.3-linux
--with-mod-dav=DIR 通过 Apache 的 mod_dav 包含 DAV 支持,DIR 是 mod_dav 的安装目录(仅限 Apache 模块版本)。
如果 sybase.compatability_mode 指令处于开启状态,则 PHP 会根据其 Sybase 类型自动将类型分配给结果,而不是将它们全部视为字符串。
unset() 返回 1。
在同一个脚本中对 setcookie() 的多次调用将以相反的顺序执行。在尝试删除一个 cookie 之前插入另一个 cookie 时,将插入放在删除之前。
eval() 不返回值。
gettype() 有一个“用户函数”返回值。
htmlspecialchars() 在 PHP 3.0.17 中添加了第二个参数。
error_log() 的第二个参数 message 将通过调试器传递。
empty() 认为“0”是非空的,例如可能来自 HTML 表单的值。
变量始终按值分配,因为没有引用。
在 HTML 表单中使用数组仅限于一维数组。
在单引号字符串中转义字符时,会生成 E_NOTICE 级别的错误。
对象在序列化和反序列化过程中会丢失其类关联。
函数必须在使用之前定义。换句话说,从上到下。
不支持可变数量的参数。
return 只能在函数块内使用。
PCRE 修饰符不可用。
is_uploaded_file() 从 PHP 3.0.16 开始存在。
BC Math 默认启用,--disable-bcmath 禁用它。
register_globals 的行为始终处于开启状态,因为该指令不存在。
short_tags() 函数可用于启用短标签 (<?)。
CGI 构建有一个“make bench”工具用于对构建进行基准测试。运行可能需要超过 30 秒,因此请确保允许适当的时间限制。
SAPI 支持不可用。
HTTP PUT 方法允许用于保存文件,其处理方式类似于 POST 方法文件保存。$PHP_PUT_FILENAME 包含创建的临时文件的位置,该文件必须在请求期间移动,否则它将被删除。
ODBC 默认启用,要禁用它请使用 --disable-unified-odbc
GD 默认启用,要禁用它请使用 --without-gd
在 Apache 中安装 PHP 3
AddModule mod_php3.c LoadModule php3_module modules/libphp3.so AddType application/x-httpd-php3 .php3
SESAM 扩展特定于 PHP 3,已删除。
有一些与 PHP 3 相关的特定迁移文档,但由于其大小和结构,这些文档未添加到本文档中。
与 PHP 3 附带的调试器相关的信息未添加到本文档中。
与 PHP 3 内部工作原理相关的信息(通常用于创建扩展)未添加到本文档中。