1.preg_split()
preg_split — 通过一个正则表达式分隔字符串
array preg_split ( string
pattern,string
subject [, int
limit=−1[,int
flags = 0 ]] )
参数 | 说明 |
---|---|
pattern | 用于搜索的模式,字符串形式。 |
subject | 输入字符串 |
limit | 如果指定,将限制分隔得到的子串最多只有limit个,返回的最后一个 子串将包含所有剩余部分。limit值为-1, 0或null时都代表”不限制”, 作为php的标准,你可以使用null跳过对flags的设置 |
flags | 可以是任何下面标记的组合(以位或运算 或 组合): |
flags 可以是任何下面标记的组合(以位或运算 | 组合):
PREG_SPLIT_NO_EMPTY如果这个标记被设置, preg_split() 将进返回分隔后的非空部分。
PREG_SPLIT_DELIM_CAPTURE如果这个标记设置了,用于分隔的模式中的括号表达式将被捕获并返回。
PREG_SPLIT_OFFSET_CAPTURE如果这个标记被设置, 对于每一个出现的匹配返回时将会附加字符串偏移量.
注意:这将会改变返回数组中的每一个元素, 使其每个元素成为一个由第0 个元素为分隔后的子串,
第1个元素为该子串在subject 中的偏移量组成的数组。
返回值:
返回一个使用 pattern 边界分隔 subject 后得到 的子串组成的数组。
2.usort()
usort — 使用用户自定义的比较函数对数组中的值进行排序
bool usort ( array &
array,callable
cmp_function )
本函数将用用户自定义的比较函数对一个数组中的值进行排序。如果要排序的数组需要用一种不寻常的标准进行排序,那么应该使用此函数。
Note:
如果两个成员比较结果相同,则它们在排序后的数组中的顺序未经定义。
Note:
此函数为 array 中的元素赋与新的键名。这将删除原有的键名,而不是仅仅将键名重新排序。
参数 | 说明 |
---|---|
array | 输入的数组 |
cmp_function | 在第一个参数小于,等于或大于第二个参数时,该比较函数必须相应地返回一个小于,等于或大于 0 的整数。 |
cmp_function:
int callback ( mixed $a, mixed $b )
**Caution** Returning non-integer values from the comparison function,
So values such as 0.99 and 0.1 will both be cast to an integer value of 0,
which will compare such values as equal.
返回值:成功时返回 TRUE, 或者在失败时返回 FALSE。
3.create_function()
create_function函数 — 创建一个匿名函数
string create_function ( string args, string code )
根据传递的参数创建一个匿名函数,并返回一个唯一的名称。
通常,这些参数将传递单引号分隔的字符串。使用单引号的字符串,原因是为了防止解析变量名。
参数 | 说明 |
---|---|
args | 该函数的参数。 |
code | 该函数的代码。 |
如果成功以字符串的形式返回一个唯一的函数名,如果错误返回FALSE。
$sv = array("ab","abced","a","abv","abeded");
usort($sv, create_function('$a,$b','return strlen($b) - strlen($a);'));
print_r($sv);
/*
Array ( [0] => abeded [1] => abced [2] => abv [3] => ab [4] => a )
*/
4.feof()
feof() 函数检测是否已到达文件末尾 (eof)。
如果文件指针到了 EOF 或者出错时则返回 TRUE,否则返回一个错误(包括 socket 超时),其它情况则返回 FALSE。
feof(file);file必需。规定要检查的打开文件
说明 :
file 参数是一个文件指针。这个文件指针必须有效,并且必须指向一个由 fopen() 或 fsockopen() 成功打开(但还没有被 fclose() 关闭)的文件。
提示和注释提示:
feof() 函数对遍历长度未知的数据很有用。
注意:如果服务器没有关闭由 fsockopen() 所打开的连接,feof() 会一直等待直到超时而返回 TRUE。默认的超时限制是 60 秒,可以使用stream_set_timeout() 来改变这个值。
注意:
如果传递的文件指针无效可能会陷入无限循环中,因为 EOF 不会返回 TRUE。
$file = fopen("test.txt", "r");
//输出文本中所有的行,直到文件结束为止。
while(! feof($file)) {
echo fgets($file). "<br />";
}
fclose($file);
5.range()
range() 函数创建并返回一个包含指定范围的元素的数组。
range(first,second,step)
参数 | 说明 |
---|---|
first | 必需。规定数组元素的最小值。 |
second | 必需。规定数组元素的最大值。 |
step | 可选。规定元素之间的步进制。默认是 1。PHP5+ |
说明:
该函数创建一个数组,包含从 first 到 second (包含 first 和 second)之间的整数或字符。如果 second 比 first 小,则返回反序的数组
6.imagerotate()
imagerotate — 用给定角度旋转图像
resource imagerotate ( resource
srcim,float
angle , int
bgdcolor[,int
ignore_transparent ] )
将 src_im 图像用给定的 angle 角度旋转。bgd_color 指定了旋转后没有覆盖到的部分的颜色。
旋转的中心是图像的中心,旋转后的图像会按比例缩小以适合目标图像的大小——边缘不会被剪去。
如果 ignore_transparent 被设为非零值,则透明色会被忽略(否则会被保留)。此参数是 PHP 5.1 新加的。
// File and rotation
$filename = 'test.jpg';
$degrees = 180;
// Content type
header('Content-type: image/jpeg');
// Load
$source = imagecreatefromjpeg($filename);
// Rotate
$rotate = imagerotate($source, $degrees, 0);
// Output
imagejpeg($rotate);