php对数组按首字符过滤的代码,供大家学习参考。
<?php
$array = array(
'abcd',
'abcde',
'bcde',
'cdef',
'defg',
'defgh'
);
$str = '~'.implode('~',$array).'~';
$word = $_GET['word']; //url = xxx.php?word=a
preg_match_all("/~({$word}(?:[^~]*))/i",$str,$matches);
var_dump($matches[1]);
//输出
//array(2) { [0]=> string(4) "abcd" [1]=> string(5) "abcde" }
//End_php
?>
说明:
以上代码使用时遇到一个问题:分隔符使用','(逗号)时会出问题。
请大家在使用时务必注意啊。
读取文件内容至字符串中,同时去除换行、行首行尾空格,代码简单,原理不错,供大家学习参考。
<?php
/*
*读取文件内容至字符串中,同时去除换行、行首行尾空格。
*/
header("Content-type: text/html; charset=utf-8");
echo preg_replace('/((\s)*(\n)+(\s)*)/i',',',file_get_contents('./file.php'));//End_php
//输出:
//aaaa,bbbb,cccc,dddd,eeee,ffff,gggg,hhhh,iiii,jjjj,kk kk,ll ll
?>
file.php内容:
aaaa
cccc
dddd
eeee
ffff
gggg
hhhh
iiii
jjjj
kk kk
ll ll
//file.php替换空格(x)、Tab(T)效果
aaaa
TTTT
cccc
ddddT
xxxxxxxxxxxT
eeeexxxxxxxxxx
ffff
gggg
hhhhxxxxxxxx
xxxxxxxxiiii
xxxxxxxxjjjjxxxxxxx
kkxxxkkTT
xxxxllxxllTT
Txxxxxxxxxx
TTTxx
array_slice()函数
返回数组中的一部分,从键offset开始,到offset+length位置结束。
其形式为:
array array_slice (array array, int offset[,int length])
offset 为正值时,拆分将从距数组开头的offset 位置开始;
如果offset 为负值,则拆分从距数组末尾的offset 位置开始。如果省略了可选参数length,则拆分将从offset 开始,一直到数组的最后一个元素。如果给出了length 且为正数,则会在距数组开头的offset+length 位置结束。相反,如果给出了length且为负数,则在距数组开头的count(input_array)-|length|位置结束。
例子: