设为首页 收藏本站
查看: 741|回复: 0

[经验分享] php实用总汇之array

[复制链接]

尚未签到

发表于 2017-3-27 06:52:29 | 显示全部楼层 |阅读模式
  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 => 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 => 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])

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-355782-1-1.html 上篇帖子: php 给图片加水印 下篇帖子: php 图片 上传 程序
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表