1、printf() 输出由静态文本和一个或多个变量中存储的动态信息,
形式如下:
boolean printf(string format [, mixed args])
eg:
printf(“Book sales %d”, 50);
输出:
Book sales 50.
sprintf()将输出指派到字符串,形式如下:
string sprintf(string format [, mixed args])
eg:
$cost = sprintf(“$%.2f”, 50.2); àcost = $50.20
2、heredoc
输出大量文本
echo <<<heredocName
heredocName;
开始和结束标识符必须相同,该标识符必须完全由字母数字字符和下划线组成,而且不能以数字或下划线开头。
开始标识符前面必须有三个左尖括号:<<<
解析规则:变量和转义序列都将得到解析,双引号不需要转义
结束标识符必须在一行开始处,而且前面不能有空格或任何其他多余的字符。
3、函数
http:///manual/zh/funcref.php
创建函数
function functionName(parameters)
{
function-body
}
调用函数
<?php
functionName();
?>
按引用传递参数,可以实现在函数内对参数的修改在函数范围外也能反映,需要在参数前加上&符号。
函数返回多个值
利用list()构造可以很方便地从数组中获取值
<?php
function
testList(){
$test[]=”Li”;
$test[]=”Man”;
$test[]=”22”;
return $test;
}
list($name,
$sex, $age)=testList();
echo “Name:
$name,Sex: $sex, Age: $age”;
?>
输出: Name: Li, Sex: Man, Age:22
95—贷款利率例子
函数库,在一个文件中简单地聚集函数定义就可以创建PHP库,将文件保存为*.php,使用include()、include_once()、require()或require_once()将函数库插入到脚本中。
4、数组
用array()创建索引数组: $age=array(5,6,7);
用array()创建关联数组: $team=array(“A”=>”Spanish”,”B”=>”Germany”,”C”=>”China”);
用预定义的值范围填充数组:
array range(int low, int high [, int step])
eg: $numList=range(0,100,2); 包含0到100之间所有偶数的数组
$abcList=range(“A”,”K”);
包含字母A到K的数组
数组的输出通常采用print_r()函数,
boolean print_r(mixed variable [, boolean return])
is_array(mixed variable)判断某个特定变量是否为一个数组
在数组头添加元素:
int array_unshift(array array,
mixed variable [, mixed variable…])
在数组尾添加元素:
int array_push(array array,
mixed variable [, mixed variable…])
从数组头删除值:删除并返回数组中找到的元素
mixed array_shift(array array)
从数组尾删除元素:删除并返回数组的最后一个元素
mixed array_pop(array array)
定位数组元素
in_array()搜索一个特定值
array_key_exists()搜索关联数组键
array_search()搜索关联数组值
array_keys()返回一个数组,包含所搜索数组中所有的键
array_values()返回一个数组中的所有值,并自动为返回的数组提供数值索引
key()返回input-array中当前指针所在位置的键,每次调用key()时使用next()函数移动指针
current()返回数组中当前指针所在位置的数组值
each()返回input_array的当前键/值对,并将指针推进一个位置,返回的数组包含四个键,键0和key包含键名,键1和value包含相应的数据,如果执行each()前指针位于数组末尾,则返回FALSE
移动数组指针:next(),
prev(), reset(), end()
数组排序
array_reverse()逆置数组元素顺序
array_flip()置换数组中键及其相应值的角色
sort()各元素按值由低到高顺序排列;rsort()降序
asort()以升序对数组排序,保持键/值的关联; arsort()降序
5、面向对象的PHP
OOP的三个基本概念:
封装、继承和多态。
通过接口将用户与实际英语程序的内部工作原理分离,称为封装。通过这些定义良好的接口进行交互的组件称为
对象 (object)。对象是通过一个称为类的模板创建的,类用于定义某个实体所应具有的数据和行为。
许多事物都可以使用一组良好定义的规则来建模。员工都有一组共同的性质,但是又许多不同类型的员工,每一类员工都拥有一般员工定义中所定义的性质的超集,这些员工类型继承了一般员工定义,包括此定义中的所有性质和行为,每个特定的员工类还可以被另一个更明确的类所继承。
多态 (polymorphism)是指OOP能够个跟就使用类的上下文来重新定义或改变类的性质或行为。
字段是用于描述类的某个方面的性质,字段要使用->操作符引用。
字段作用域:public,
private, protected, final, static
PHP6 中用var取代public。
private 字段只能在定义字段的类中访问,指定为私有的字段不能由实例化的对象直接访问,也不能由其子类使用。私有字段必须通过公共接口类访问。
protected ,与函数通常需要在函数内部使用的变量一样,类也可以包含只在内部使用的字段,即保护字段。在继承的子类中也可以访问和操作保护字段,这是私有字段所没有的特性。如果希望扩展类,就应当使用保护字段。
final ,在为字段设置final作用域时,将阻止在子类中覆盖这个字段。