`
zhengdl126
  • 浏览: 2538984 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类

php实用总汇之array

    博客分类:
  • php
阅读更多

 

array_shift — 将数组开头的单元移出数组

array_pop — 将数组最后一个单元弹出(出栈)

 

 

 

------------------------- sort asort ksort

sort只依据值从小到大排序,键值不参与排序
asort依据值排序,键值参与排序
ksort依据键值排序,值参与排序


sort只依据值从小到大排序,键值不参与排序。例

 <?php

   $arr=array("a"=>"d","d"=>"c","b"=>"a");

   sort($arr);

   var_dump($arr);

 ?>

结果

array(3) { [0]=> string(1) "a" [1]=> string(1) "c" [2]=> string(1) "d" }

asort依据值进行排序,键值参与排序

 <?php

   $arr=array("a"=>"d","d"=>"c","b"=>"a");

   asort($arr);

   var_dump($arr);

 ?>

结果

array(3) { ["b"]=> string(1) "a" ["d"]=> string(1) "c" ["a"]=> string(1) "d" }

ksort依据键值进行排序,值参与排序

 <?php

   $arr=array("a"=>"d","d"=>"c","b"=>"a");

   ksort($arr);

   var_dump($arr);

 ?>

结果

array(3) { ["a"]=> string(1) "d" ["b"]=> string(1) "a" ["d"]=> string(1) "c" }

 

----------------------- 将数组倒序 array_reverse 

 

 

------------------------ array_slice

 

$a=array(
    3=> 'aadfa ',
    5=> 'bds ',
    2=> 'ac '
);

现在想让这个数组的那个key取消,重新排序,即生成这种形式的:
$a=array(
    0=> 'aadfa ',
    1=> 'bds ',
    2=> 'ac '
);

后面的值顺序保持不变。
怎样进行这个排序?
<?php
$a=array(
    3=> 'aadfa ',
    5=> 'bds ',
    2=> 'ac '
);

$a   =   array_slice($a,   0);
?>
Array
(
        [0]   =>   aadfa
        [1]   =>   bds
        [2]   =>   ac
)

 

------------------------array_keys — 返回数组中所有的键名

$array = array(0 => 100, "color" => "red");
print_r(array_keys($array));
Array
(
    [0] => 0
    [1] => color
)


if (array_keys($orderInfo) != array (
                        'con',
                        'num',
                        'odds',
                        'am',
                        'playType',
                        'oddSet'
                )) {
...
}

 

 

 

----------------------array_intersect — 计算数组的交集

 

------------------in_array()

 

--------------array_intersect — 计算数组的交集

 

---------------------array_flip() 交换数组中的键和值。

 

 

---------------------array_map  将回调函数作用到给定数组的单元上

(PHP 4 >= 4.0.6)
array_map --  将回调函数作用到给定数组的单元上
说明
array array_map ( mixed callback, array arr1 [, array ...])

array_map() 返回一个数组,该数组包含了 arr1 中的所有单元经过 callback 作用过之后的单元。callback 接受的参数数目应该和传递给 array_map() 函数的数组数目一致。

例子 1. array_map() 例子
<?php
function cube($n) {
    return $n*$n*$n;
}

$a = array(1, 2, 3, 4, 5);
$b = array_map("cube", $a);
print_r($b);
?>

这使得 $b 成为:

Array
(
    [0] => 1
    [1] => 8
    [2] => 27
    [3] => 64
    [4] => 125
)

例子 2. array_map() - 使用更多的数组
<?php
function show_Spanish($n, $m) {
    return "The number $n is called $m in Spanish";
}

function map_Spanish($n, $m) {
    return array ($n => $m);
}

$a = array(1, 2, 3, 4, 5);
$b = array("uno", "dos", "tres", "cuatro", "cinco");

$c = array_map("show_Spanish", $a, $b);
print_r($c);

$d = array_map("map_Spanish", $a , $b);
print_r($d);
?>

结果为:

// printout of $c
Array
(
    [0] => The number 1 is called uno in Spanish
    [1] => The number 2 is called dos in Spanish
    [2] => The number 3 is called tres in Spanish
    [3] => The number 4 is called cuatro in Spanish
    [4] => The number 5 is called cinco in Spanish
)

// printout of $d
Array
(
    [0] => Array
        (
            [1] => uno
        )

    [1] => Array
        (
            [2] => dos
        )

    [2] => Array
        (
            [3] => tres
        )

    [3] => Array
        (
            [4] => cuatro
        )

    [4] => Array
        (
            [5] => cinco
        )

)

通常使用了两个或更多数组时,它们的长度应该相同,因为回调函数是平行作用于相应的单元上的。如果数组的长度不同,则最短的一个将被用空的单元扩充。

本函数一个有趣的用法是构造一个数组的数组,这可以很容易的通过用 NULL 作为回调函数名来实现。

 

 

----------------------range  建立整数范围的数组

 

array range(int low, int high);传回从low到high的整数数组

 

$monkeys=range(1,52);

 

 

------------------------array_splice 移除数组的一部份且替代它

array array_splice(array input, int offset, int [length] , array [replacement] );

此函数将数组input从offset到length移除,若有提供参数replacement则以replacement的元素来替代。

 

array_splice($monkeys,5,1);  将第五个元素移除

 

 

------------------------array_merge  函数把两个或多个数组合并为一个数组。

array_merge(array1,array2,array3...)

 

<?php
$a1=array("a"=>"Horse","b"=>"Dog");
$a2=array("c"=>"Cow","b"=>"Cat");
print_r(array_merge($a1,$a2));
?>

 

<?php
$a=array(3=>"Horse",4=>"Dog");
print_r(array_merge($a));
?>
Array ( [0] => Horse [1] => Dog )

 

 

----------------------array_rand() 返回一个随机单元的键名,否则就返回一个包含随机键名的数组。这样你就可以随机从数组中取出键名和值。

 

$b1 'a,g2,uu,fk' ;

  
$bArray  explode ( ',' $b1 );

  echo 
$bArray [ array_rand ( $bArray )];

 

 

----------------------array_combine

array_combine(array1,array2)  两个数组的长度必须一致

array_combine() 函数通过合并两个数组来创建一个新数组,其中的一个数组是键名,另一个数组的值为键值。

如果其中一个数组为空,或者两个数组的元素个数不同,则该函数返回 false。

 


<?php
$a1=array("a","b","c","d");
$a2=array("Cat","Dog","Horse","Cow");
print_r(array_combine($a1,$a2));
?>
输出Array ( [a] => Cat [b] => Dog [c] => Horse [d] => Cow )

 

 

 

-------------------------array_pop

array_pop -- 将数组最后一个单元弹出(出栈)


mixed array_pop ( array array )

array_pop() 弹出并返回 array 数组的最后一个单元,并将数组 array 的长度减一。如果 array 为空(或者不是数组)将返回 NULL。

    注: 使用本函数后会重置(reset())数组指针。

例子 1. array_pop() 例子
<?php
$stack = array ("orange", "banana", "apple", "raspberry");
$fruit = array_pop ($stack);
print_r($stack);
?>

经过此操作后,$stack 将只有 3 个单元:
Array
(
   [0] => orange
   [1] => banana
   [2] => apple
)

并且 rasberry 将被赋给 $fruit。

警告

本函数可能返回布尔值 FALSE,但也可能返回一个与 FALSE 等值的非布尔值,例如 0 或者 ""。请参阅布尔类型章节以获取更多信息。应使用 === 运算符来测试本函数的返回值。

 

 

 

---------------------array_push

array_push() 函数向第一个参数的数组尾部添加一个或多个元素(入栈),然后返回新数组的长度。

该函数等于多次调用 $array[] = $value。



注释:即使数组中有字符串键名,您添加的元素也始终是数字键。(参见例子 2)

注释:如果用 array_push() 来给数组增加一个单元,还不如用 $array[] =,因为这样没有调用函数的额外负担。

注释:如果第一个参数不是数组,array_push() 将发出一条警告。这和 $var[] 的行为不同,后者会新建一个数组。
例子 1
<?php
$a=array("Dog","Cat");
array_push($a,"Horse","Bird");
print_r($a);
?>输出:

Array ( [0] => Dog [1] => Cat [2] => Horse [3] => Bird )例子 2
带有字符串键的数组:

<?php
$a=array("a"=>"Dog","b"=>"Cat");
array_push($a,"Horse","Bird");
print_r($a);
?>输出:

Array ( [a] => Dog [b] => Cat [0] => Horse [1] => Bird )

 

 

---------------------------------array_unique  剔除重复的数组

 

array_unique -- 移除数组中重复的值,移除后面的重复值
说明
array array_unique ( array array)

array_unique() 接受 array 作为输入并返回没有重复值的新数组。

注意键名保留不变。array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。

    注: 当且仅当 (string) $elem1 === (string) $elem2 时两个单元被认为相同。就是说,当字符串的表达一样时。

    第一个单元将被保留。

例子 1. array_unique() 例子
<?php
$input = array ("a" => "green", "red", "b" => "green", "blue", "red");
$result = array_unique ($input);
print_r($result);
?>

上例将输出:
Array
(
   [a] => green
   [0] => red
   [1] => blue
)

 

 

 

------------------------------------合并数组

 

 

array(
        'id'=>1,
        ‘name'=>aa
),
array(
        'id'=>2,
        'name'=>bb
)
复制代码这两个数组是用foreach循环得到的,还可能是只有一个二维数组,也可能是十几个二维数组。这些数组我都想在循环外面用到,但是,直接在外面用的话,只能取到最后一个数组的值,所以只能合并了,合并成三维,然后在smarty里输出,但是,怎么合并呢,我弄了很久都没辙,特来求助,请高手不吝赐教。

$fanwei_date[] = array($min_date,$max_date);

 

 

 

 

 

 

 

-----------------------------------关于PHP数组的基础知识总结

关于数组:

PHP 中的数组是复杂的,并且比许多其他高级语言中的数组更灵活。

数组 array 是一组有序的变量 , 其中每个变量被叫做一个元素。

数组可以被编号或者相关联,也就是数组的元素可以分别根据数字索引或文本化字符串来访问

PHP 中,数组可以包含标量 ( 整数,布尔,字符串,浮点数 ) 或复合值 ( 对象甚至其他数组 ) ,并且可以包含不同类型的值

1 。创建数组

PHP 提供创建数组的 array() 语言结构

$numbers = array(5,4,3,2,1);

$words = array("web","database","application");

echo $numbers[2];

echo $words[0];

--------------------- 输出结果 ----------------------------------------

3web

---------------------------------------------------------------------

默认情况下,数组的第一个元素的索引为 0 。数组中包含的值可以通过使用方括号 [] 语法来检索和修改

$numbers[5] = 0;

数字化索引的数组可以创建位从任何索引值开始

$numbers = array(1=>"one","two","three","four");

也可以松散的索引

$numbers = array(1=>"one",3=>"three",5=>"zero");

可以通过给变量赋予一个没有参数的 array() 来创建空数组。然后可以通过使用方括号 [] 语法来添加值

$error = array();

$error[] = "no error!!!";

$error[] = "second error!!!";

echo $error[0];

echo $error[1];

--------------------- 输出结果 ----------------------------------------

no error!!!second error!!!

---------------------------------------------------------------------

2. 关联数组

关联数组 (associative array) 使用字符串索引 ( 或键 ) 来访问存储在数组中的值

关联索引的数组对于数据库层交互非常有用

$newarray = array("first"=>1,"second"=>2,"third"=>3);

echo $newarray["second"];

$newarray["third"]=5;

echo $newarray["third"];

--------------------- 输出结果 ----------------------------------------

25

---------------------------------------------------------------------

3. 异构数组

PHP 数组可以包含不同种类的值

$mixedBag = array("cat",42,8.5,false);

var_dump(mixedBag);

4. 多维数组

创建包含数组的数组,数组维数没有限制,但是一般很难想象一个多于三维的数组的用法

$planets = array(array("MM",1,2),array("NN",3,4),array("BB",5,6),array("VV",7,8));

print $planets[2][0];

$planets2 = array("MM"=>array("AA"=>1,"SS"=>2),

"NN"=>array("DD"=>3,"FF"=>4),

"BB"=>array("GG"=>6,"HH"=>7,"P"=>array("haha!!!!")),

"VV"=>array("JJ"=>6,"KK"=>7,"LL"=>array("one","two")));

print $planets2["VV"]["LL"][0];

--------------------- 输出结果 ----------------------------------------

BBone

---------------------------------------------------------------------

5. 使用循环访问数组

遍历数组的方法有很多 ( 使用 while,for 循环 ) 或者 foreach 语句,最容易的是 foreach 语句

$length = array(0,107,202,400,475);

// 将厘米转换为寸

for($i=0;$i<5;$i++)

{

echo ($length[$i]/3);

}

$j=0;

while(isset($length[$j]))

{

echo ($length[$j]/3);

$j++;

}

foreach($length as $cm)

{

echo ($cm/3);

}

--------------------- 输出结果 ----------------------------------------

0

35.6666666667

67.3333333333

133.333333333

158.333333333

0

35.6666666667

67.3333333333

133.333333333

158.333333333

0

35.6666666667

67.3333333333

133.333333333

158.333333333

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

---------------------------------------------------------------------

foreach 还可以迭代关联数组的值

$sound = array("cow"=>"moo","dog"=>"woof",

"pig"=>"oink","duck"=>"quack");

foreach ($sound as $animal=>$noice)

{

echo "$animal 得叫声是这样的 $noice $noice......";

}

--------------------- 输出结果 ----------------------------------------

cow 的叫声是这样的 moo moo......

dog 的叫声是这样的 woof woof......

pig 的叫声是这样的 oink oink......

duck 的叫声是这样的 quack quack......

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

---------------------------------------------------------------------

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

6. 使用数组指针

与存储在数组中的键和关联值一起, PHP 还拥有一个指向数组当前元素的内部索引,

有几个函数使用并更新该数组索引来提供对数组元素的访问

$a = array("a","b","c","d","e","f");

echo current($a);

each($a);

key($a);// 目前数组的指针,返回其索引

echo current($a);// 当前元素的值

each($a);// 返回当前元素的值并将内部索引指向下一个元素

each($a);

echo current($a);

next($a);// 指向下一个元素

echo current($a);

prev($a);// 指向上一个元素

echo current($a);

end($a);// 指向最后一个元素

echo current($a);

key($a);

echo current($a);

--------------------- 输出结果 ----------------------------------------

abdedff

---------------------------------------------------------------------

7. 基本的数组函数

integer count(mixed var)// 在数组中返回元素的个数,也可用于任何的变量

number max(array numbers)// 返回数组中的最大值

number min(array numbers)// 返回数组中的最小值

boolean in_array(mixed needle,array haystack[,bollean strict])// 查找数组中的值,第三个参数可选,强制执行类型检查

mixed array_search(mixed needle,array haystack[,boolean strict])// 返回 而不是布尔值,

找不到时返回 false ,找到的元素如果正好是第一个元素,则返回 0 ,而 PHP 会自动转化为 false 所以需要使用 === 判断,如下

$a = array("a","b","c","d","e","f");

$index = array_search("a",$a);

if($index === false)

echo " 在数组 a 中未发现字符 'a'";

else

echo "Index = $index";

--------------------- 输出结果 ----------------------------------------

Index = 0

---------------------------------------------------------------------

array array_reverse(array source[,bool preserve_keys])// 逆转数组 , 生成一个新数组,可选参数为 true 时,保留索引和元素之间的关联

$a = array("a","b","c","d","e","f");

$newa = array_reverse($a);// 直接翻转

echo $newa[0];

$newb = array_reverse($a,true);// 依旧保留了索引和元素之间的关联

echo $newb[0];

--------------------- 输出结果 ----------------------------------------

fa

---------------------------------------------------------------------

sort(array subject[,integer sort_flag])// 根据 进行升序排列(在原数组中重新排列元素)

rsort(array subject[,integer sort_flag])// 根据 进行降序排列(在原数组中重新排列元素)

可选参数可以指定为按数字方式 SORT_NUMERIC 还是字符串方式 SORT_STRING 或者通常的方式 SORT_REGULAR 排序

sort() rsort() 可以用于关联数组,但是 将丢失

asort(array subject[,integer sort_flag])// 根据 进行升序排列(在原数组中重新排列元素),保持键值关联

arsort(array subject[,integer sort_flag])// 根据 进行降序排列(在原数组中重新排列元素),保持键值关联

asort() arsort() 用于非关联数组时,元素按排序后的次序重新排列,但是访问元素的索引不改变

integer ksort(ayyay subject [,integer sort_flag])// 根据 键或索引 进行升序排列

integer krsort(ayyay subject [,integer sort_flag])// 根据 键或索引 进行降序排列

usort(array subject, string compare_function)// 根据用户定义排序,用户定义自己的排序规则函数,但函数必须符合

uasort(array subject, string compare_function)//integer my_compare_function(mixed a, mixed b),a>b 返回 1 a uksort(array subject, string compare_function)//a 等于 b 时返回 0

$numbers = array(16,3,2,171,5,24,6,19);

sort($numbers);

foreach($numbers as $n)

echo $n." ";

$numbers = array(16,3,2,171,5,24,6,19);

rsort($numbers);

foreach($numbers as $n)

echo $n." ";

$numbers = array(16,3,2,171,5,24,6,19);

sort($numbers,SORT_STRING);

foreach($numbers as $n)

echo $n." ";

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

$a = array("o"=>"kk","e"=>"zz","z"=>"hh","a"=>"rr");

asort($a);

foreach ($a as $keyname=>$keyvalue)

echo $keyvalue;

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

$a = array("o"=>"kk","e"=>"zz","z"=>"hh","a"=>"rr");

ksort($a);

foreach ($a as $keyname=>$keyvalue)

echo $keyvalue;

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

// 基于长度比较两个字符串

function cmp_length($a,$b)

{

if(strlen($a) < strlen($b))

return -1;

if(strlen($a) > strlen($b))

return 1;

return 0;

}

$animals = array("cow","ox","monkey","mimi");

usort($animals,"cmp_length");

foreach($animals as $an)

echo $an;

--------------------- 输出结果 ----------------------------------------

2 3 5 6 16 19 24 171 171 24 19 16 6 5 3 2 16 171 19 2 24 3 5 6 hhkkrrzzrrzzkkhhoxcowmimimonkey

---------------------------------------------------------------------

array_merge($a,$b)// 组合数组,个人认为是比较有趣的函数之一,从两个数组生成一个数组,具有相同 的值会被覆盖

//////////////////////////// 代码部分 ////////////////////////////////////////

$a = array("name"=>"zhangsan",10,100);

$b = array("name"=>"lisi",4,6,8);

$c = array_merge($a,$b);

var_dump($c);

//////////////////////////////////////////////////////////////////////////

--------------------- 输出结果 ----------------------------------------

array(6) { ["name"]=> string(4) "lisi" [0]=> int(10) [1]=> int(100) [2]=> int(4) [3]=> int(6) [4]=> int(8) }

---------------------------------------------------------------------

array array_combine(array $a,array $b)//a 数组的值为新数组的键, b 数组的值为新数组的值,数组长度不同时,返回 false

//////////////////////////// 代码部分 ////////////////////////////////////////

$a = array("name","math","china");

$b = array("zhangsan",4,6);

$c = array_combine($a,$b);

var_dump($c);

//////////////////////////////////////////////////////////////////////////

--------------------- 输出结果 ----------------------------------------

array(3) { ["name"]=> string(8) "zhangsan" ["math"]=> int(4) ["china"]=> int(6) }

---------------------------------------------------------------------

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

[ 本帖最后由 wangzhanf 2006-11-14 20:44 编辑 ]

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

精华

    0

在线时间

    0 小时

注册时间

    1970-1-1

最后登录

    1970-1-1

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

查看详细资料

      

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

TOP

PHP 论坛 AmPHP1.0 服务器组合套件正式版发布

馒头

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

游客

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

UID

    3205

帖子

    10

大红花

    0

PMB

     0

注册时间

    1970-1-1

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

    * 发短消息

    * 加为好友

    * 当前离线

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

      

2 发表于 2006-11-14 01:58  只看该作者

关于 PHP 数组的基础知识总结(不断更新)附件中带有源码

关于 PHP 字符串的基础知识总结(不断更新)附件中带有源码

字符串

注意单引号和双引号的区别

注意转义字符 \ 的使用 \\,\",\$

注意使用 8 进制或 16 进制字符表示 \xf6

echo "H\xf6me";// 需要察看是否支持此类文字编码

--------------------- 输出结果 ----------------------------------------

H e

---------------------------------------------------------------------

1. 使用 printf() sprintf() 创建格式化的输出

printf() 直接输出到输出缓冲区

sprintf() 的输出作为字符串返回

printf(" 输出内容 %.2f\n",$PI());

所有的转换规范都以 % 开头

数据类型有 d- 整数 ,s- 字符串 ,f- 浮点数 ,b- 二进制

.2 是一个可选的宽度指标,小数点右边输出使用 0 填充

printf("%.2f",3.14159);

printf("%10.2f",3.14159);

printf("%.10f",3.14159);

printf("%.9s",abcdefghijklmn);

printf("%5.2f,%f,%7.3f\m",3.14159,3.14159,3.14159);

printf("%b %d %f %s \n",123,123,123,"test");

--------------------- 输出结果 ----------------------------------------

3.14 3.143.1415900000abcdefghi 3.14,3.141590, 3.142\m1111011 123 123.000000 test

---------------------------------------------------------------------

2. 字符串填充

string str_pad(string input 原始字串 , int length 添加后的总长度 [, string padding 要填充的字符 [, int pad_type] 填充类型 ])

填充类型有添加在左边 STR_PAD_LEFT ,默认添在右边,填充在两端 STR_PAD_BOTH

$index = array("one"=>1,"two"=>155,"three"=>1679);

echo "

";

echo str_pad(" 这是标题 ",50," ",STR_PAD_BOTH)."\n";

foreach($index as $inkey=>$inval)

        echo str_pad($inkey,30,".").str_pad($inval,20,".",STR_PAD_LEFT)."\n";

echo "

";

--------------------- 输出结果 ----------------------------------------

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

                     这是标题                     

one..............................................1

two............................................155

three.........................................1679

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

---------------------------------------------------------------------

string strtolower(string subject)// 转换为小写

string strtoupper(string subject)// 转换为大写

string ucfirst(string subject)// 首字母大写

string ucwords(string subject)// 每个单词首字母大写

string ltrim(string subject)// 去左空白

string rtrim(string subject)// 去右空白

string trim(string subject) 去左右空白,空白包括 null, 制表符,换行符,回车符和空格

string n12br(string source)// \n 表示的换行符转换为 <BR /> 标记

3. 字符串比较

integer strcmp(sting str1,string str2) //str1 大于 str2 返回 -1 str1 小于 str2 返回 1 str1 str2 相等返回 0

integer strmcmp(sting str1,string str2,integer length) // 第三个参数限制 length 个字符的比较

print strcmp("aardvark","aardwolf");

print strncmp("aardvark","aardwolf",4);

--------------------- 输出结果 ----------------------------------------

-10

---------------------------------------------------------------------

strcasecmp() strncasecmp() 是不区分大小写的比较函数

4. 查找和抽取子字符串

string substr(sting source,integer start[,integer length])// start 开始取 length 个字符

start length 可以使用负值

$var = "abcdefgh";

print substr($var,2);// 0 开始计数

print substr($var,2,3);

print substr($var,-1);// 从字符串的末尾开始

print substr($var,-5,2);

print substr($var,-5,-2);

--------------------- 输出结果 ----------------------------------------

cdefgh

cde

h

de

def

<!-- [if !supportEmptyParas]--> <!-- [endif]-->

---------------------------------------------------------------------

integer strpos(string haystack,string needle[,integer offset])// 查找子字符串的位置,返回第一次出现 .

integer strrpos(string haystack,string needle)// 只搜索单个字符(多个字符只取第一个),返回最后一次出现的索引 .

还有常见的从 字符串中抽取找到的部分 的函数

string strstr(string haystack,string needle)// 不区分大小写

string stristr(string haystack,string needle)// 区分大小写

string strrchr(string haystack,sting needle)

*********** array explode(string separator,string subject[,integer limit])// 返回一个字符串数组

array implode(string glue,array pieces)// 返回一个字符串

/////////////////////////// 代码段 ////////////////////////////////////////

$guest = "this is a string";

$guestArray = explode(" ",$guest);

var_dump($guestArray);

sort($guestArray);

echo implode(",",$guestArray);

////////////////////////////////////////////////////////////////////////

--------------------- 输出结果 ----------------------------------------

array(4) { [0]=> string(4) "this" [1]=> string(2) "is" [2]=> string(1) "a" [3]=> string(6) "string" } a,is,string,this

---------------------------------------------------------------------

5. 替换字符和子字符串

string substr_replace(string source,string replace,int start[,int length])

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    PHP实现数组array转换成xml的方法

    在PHP编程中,有时我们需要将数据结构转换成XML格式,以便于数据...- 《php常见数据库操作技巧汇总》:提供有关PHP数据库操作的实用技巧。 这些资源将帮助你进一步提升PHP编程技能,特别是涉及到数组和XML转换的部分。

    PHP常用函数汇总

    PHP提供了丰富的数组处理函数,如`array()`用于创建数组,`count()`计算数组元素个数,`array_push()`在数组末尾添加元素,`array_pop()`移除并返回数组最后一个元素,`array_merge()`合并多个数组,`array_slice()`...

    PHP基础知识点汇总(代码+知识点)

    本文将基于"PHP基础知识点汇总(代码+知识点)"这一主题,深入探讨PHP的基础概念、语法特性、常用函数以及一些实用技巧,帮助初学者更好地理解和掌握PHP编程。 1. **PHP简介** PHP是“PHP:Hypertext Preprocessor...

    PHP常用技巧汇总

    【PHP常用技巧汇总】 在PHP编程中,掌握一些实用的技巧可以提高开发效率,优化代码质量。以下是一些常见的PHP技巧: 1. **文件读取函数**:`PHP_Read()` 函数通过 `fopen()` 打开文件,使用 `fgets()` 逐行读取...

    PHP入门教程之数组用法汇总(创建,删除,遍历,排序等)

    综上所述,PHP提供了丰富的数组操作方法,通过以上实例的介绍和分析,可以看到PHP数组在日常开发中的灵活性和实用性。熟练掌握数组的操作对于PHP开发者来说是非常重要的,可以大大提高编程效率和代码质量。对于初学...

    php使用技巧汇总

    在PHP编程领域,掌握一些实用的技巧和方法可以极大地提高开发效率和代码质量。以下是对标题"php使用技巧汇总"的详细解读,以及与描述相关的知识点解析。 1. **权限判断**:在PHP中,经常需要对文件或目录的权限进行...

    (全)传智播客PHP就业班视频完整课程

    非常实用 持之以恒才是王道! 8-11 1.html介绍 html运行原理① 8-11 2.html运行原理② html文件基本结构 html元素和属性 8-11 3.符号实体 url说明 超链接 发送电邮 8-11 4.图像 表格 实际应用-菜谱 课堂练习-课程表 8...

    php实现遍历文件夹的方法汇总

    在本节中,我们将对PHP实现遍历文件夹的方法进行汇总,这不仅对于理解PHP文件处理API非常重要,而且对于掌握服务器端的文件管理操作也至关重要。 首先,我们来看一个基本的PHP函数,它可以帮助我们遍历指定路径下的...

    PHP Array交叉表实现代码

    在本文中,我们将深入探讨...总的来说,PHP数组实现的交叉表是一种灵活且实用的方法,尤其适用于处理和展示数据。通过理解这个类的工作原理,开发者可以更好地理解和构建自己的数据处理工具,提升数据驱动决策的效率。

    PHP中foreach()用法汇总

    通过上述内容,可以了解到foreach()在PHP编程中是一个非常实用且强大的工具,它在处理数组时提供了极大的便利,让开发者可以更简洁、高效地完成代码的编写。掌握foreach()的用法对于任何使用PHP进行开发的程序员来说...

    8个PHP程序员常用的功能汇总

    标题中提到的“8个PHP程序员常用的功能汇总”,意味着文章将会介绍八个在PHP编程中频繁使用且实用的功能。这为PHP开发者提供了在开发过程中可能会用到的重要知识点,涵盖了函数参数处理、文件查找、内存使用监控等...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    每个实例都经作者精心筛选,具有很强的实用性,其中一些实例是开发人员难于寻觅的解决方案。   本书适合PHP的初学者,如高校学生、求职人员作为练习、速查、学习使用,也适合PHP程序员参考、查阅。 目 录 目录:...

    php操作csv文件代码实例汇总

    在进行数据导入导出、备份、日志记录、存储配置设置等场景时,CSV文件的读取与写入操作非常实用。PHP提供了一套专门用于处理CSV文件的功能函数,例如`fputcsv`、`fgetcsv`等,下面将详细解说PHP操作CSV文件的代码...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    每个实例都经作者精心筛选,具有很强的实用性,其中一些实例是开发人员难于寻觅的解决方案。   本书适合PHP的初学者,如高校学生、求职人员作为练习、速查、学习使用,也适合PHP程序员参考、查阅。 目 录 目录:...

    php性能分析之php-fpm慢执行日志slow log用法浅析

    其中之一就是php-fpm慢执行日志,它类似于MySQL的慢查询日志(slowquerylog)。 php-fpm慢执行日志可以记录下执行时间超过我们预设阈值的脚本信息。php-fpm提供了request_slowlog_timeout指令用于设置慢执行脚本的...

    深入php常用函数的使用汇总

    在深入探讨PHP常用函数的使用汇总之前,首先需要明确函数在编程中的作用。函数是组织好的,可重复使用的代码段,它允许开发者将代码拆分成小的模块,每一个模块都执行一个特定的任务。使用函数可以提高代码的重用率...

    使用pthreads实现真正的PHP多线程(需PHP5.3以上版本)

    如果将PHP多线程技术与NoSQL数据库结合起来,就能够实现通过多个线程同时对NoSQL数据库发起查询,然后将结果汇总,这样不仅可以充分利用多核处理器,还能通过并行处理大幅度提升整体处理速度。 在实际应用中,比如...

    php删除txt文件指定行及按行读取txt文档数据的方法

    对于有志于深入学习PHP的开发者来说,除了本文提及的资料外,还可以参考《php文件操作总结》、《php字符串(string)用法总结》等专题,以及各种基础教程和操作技巧汇总。 在实际应用中,PHP的文件操作技巧非常实用,...

    php正则删除html代码中class样式属性的方法 <font color=red>原创</font>

    - 《PHP数组(Array)操作技巧大全》:涵盖了PHP数组的各种操作方法。 - 《PHP基本语法入门教程》:基础的PHP编程知识。 - 《PHP运算与运算符用法总结》:关于PHP的算术、比较、逻辑等运算符。 - 《php面向对象程序...

    PHP封装的简单连接MongoDB类示例

    - 《PHP+MongoDB数据库操作技巧大全》:提供MongoDB与PHP结合的各种实用操作技巧。 - 《PHP基于pdo操作数据库技巧总结》:虽然不是关于MongoDB,但可以学习如何使用PDO进行SQL数据库操作。 - 《php面向对象程序设计...

Global site tag (gtag.js) - Google Analytics