## 内部(内置)函数
PHP 有很多标准的函数和结构。还有一些函数需要和特定地 PHP 扩展模块一起编译,否则在使用它们的时候就会得到一个致命的“未定义函数”错误。例如,要使用 [image](http://php.net/manual/zh/ref.image.php) 函数中的 [imagecreatetruecolor()](http://php.net/manual/zh/function.imagecreatetruecolor.php),需要在编译 PHP 的时候加上 GD 的支持。或者,要使用 [mysql\_connect()](http://php.net/manual/zh/function.mysql-connect.php) 函数,就需要在编译 PHP 的时候加上 [MySQL](http://php.net/manual/zh/ref.mysql.php) 支持。有很多核心函数已包含在每个版本的 PHP 中如[字符串](http://php.net/manual/zh/ref.strings.php)和[变量](http://php.net/manual/zh/ref.var.php)函数。调用 [phpinfo()](http://php.net/manual/zh/function.phpinfo.php) 或者 [get\_loaded\_extensions()](http://php.net/manual/zh/function.get-loaded-extensions.php) 可以得知 PHP 加载了那些扩展库。同时还应该注意,很多扩展库默认就是有效的。PHP 手册按照不同的扩展库组织了它们的文档。请参阅[配置](http://php.net/manual/zh/configuration.php),[安装](http://php.net/manual/zh/install.php)以及各自的扩展库章节以获取有关如何设置 PHP 的信息。
手册中[如何阅读函数原型](http://php.net/manual/zh/about.prototypes.php)讲解了如何阅读和理解一个函数的原型。确认一个函数将返回什么,或者函数是否直接作用于传递的参数是很重要的。例如,[str\_replace()](http://php.net/manual/zh/function.str-replace.php) 函数将返回修改过的字符串,而 [usort()](http://php.net/manual/zh/function.usort.php) 却直接作用于传递的参数变量本身。手册中,每一个函数的页面中都有关于函数参数、行为改变、成功与否的返回值以及使用条件等信息。了解这些重要的(常常是细微的)差别是编写正确的 PHP 代码的关键。
> **Note**: 如果传递给函数的参数类型与实际的类型不一致,例如将一个 [array](http://php.net/manual/zh/language.types.array.php) 传递给一个 [string](http://php.net/manual/zh/language.types.string.php) 类型的变量,那么函数的返回值是不确定的。在这种情况下,通常函数会返回 **`NULL`**。但这仅仅是一个惯例,并不一定如此。
参见 [function\_exists()](http://php.net/manual/zh/function.function-exists.php),[函数参考](http://php.net/manual/zh/funcref.php),[get\_extension\_funcs()](http://php.net/manual/zh/function.get-extension-funcs.php) 和 [dl()](http://php.net/manual/zh/function.dl.php)。
- 序言
- 简介
- PHP是什么?
- PHP能做什么?
- 基本语法
- 类型
- boolean(布尔型)
- integer(整型)
- float(浮点型)
- string(字符串)
- array(数组)
- object(对象)
- callable(可调用)
- resource(资源)
- NULL(无类型)
- 伪类型
- 类型转换的判别
- 变量
- 基础
- 预定义变量
- 变量范围
- 可变变量
- 来自PHP之外的变量
- 常量
- 语法
- 魔术常量
- 表达式
- 运算符
- 运算符优先级
- 算术运算符
- 赋值运算符
- 位运算符
- 比较运算符
- 错误控制运算符
- 执行运算符
- 递增/递减运算符
- 逻辑运算符
- 字符串运算符
- 数组运算符
- 类型运算符
- 流程控制
- if
- else
- elseif/else if
- 流程控制的替代语法
- while
- do-whille
- for
- foreach
- break
- continue
- switch
- declare
- return
- require
- include
- require_once
- include_once
- goto
- 函数
- 用户自定义函数
- 函数的参数
- 返回值
- 可变函数
- 内部 (内置)函数
- 匿名函数
- 类与对象
- 简介
- 基本概念
- 属性
- 类的自动加载
- 构造函数
- 访问控制(可见性)