php专区

 首页 > php专区 > PHP基础 > 数组 > PHP的一些基本语法(数组,字符串) - php数组

PHP的一些基本语法(数组,字符串) - php数组

分享到:
【字体:
导读:
          上篇写了PHP的一些基本语法,以及表单的提交和处理等,这一篇中接着上一篇写了数组的用法以及数组和字符串之间的相互处理,希望对大家有所帮助:...

PHP的一些基本语法(数组,字符串)

上篇写了PHP的一些基本语法,以及表单的提交和处理等,这一篇中接着上一篇写了数组的用法以及数组和字符串之间的相互处理,希望对大家有所帮助:

多维数组:

  1. $arr1=array('a'=>'MD','b'=>'AD'...); 
  2. $arr2=array('c'=>'SD','d'=>'AE'...); 
  3. $arr=array('US'=>$arr1,'AB'=>$arr2); 

使用多维数组:

  1. echo  "{$arr['US']['a']}"

---arr1.php实例源码:

  1.   
  2.  
  3.   "arr.php" method="post">
  4.     
    Enter your information in the form below: 
  5.  
  6.   

    NAME:"text" name="name" maxlength="40" size="20">

      
  7.   

    Interests:

  8.     "checkbox" name="interests[]" value="Music"/>Music 
  9.  
  10. "checkbox" name="interests[]" value="Movies"/>Movies 
  11.  
  12. "checkbox" name="interests[]" value="Books"/>Books 
  13.  
  14. "checkbox" name="interests[]" value="Skiing"/>Skiing 
  15.  
  16. "checkbox" name="interests[]" value="Napping"/>Napping 
  17.  
  18.       

       
  19.      
  20.   "center">"submit" name="submit" value="submit"/>
 
  •  
  •    
  •  
  •  
  • ---arr.php实例源码:

    1.  
    2.  
    3.   
    4.  
    5.     if(!emptyempty($_POST['name']))
    6.  
    7. $name=stripslashes($_POST['name']); 
    8.  
    9. }
    10. else 
    11.  
    12. $nam=NULL; 
    13.  
    14. echo '

      You forgot to enter your name

      '
    15.  
    16. } 
    17. if(isset($_POST['interests']))
    18. {
    19. $interests=true; 
    20. else 
    21. $interests=NULL; 
    22. echo '

      You forgot to enter your interests!

      '
    23.  
    24. if($name && $interests
    25.  
    26.  
    27. echo "Thank you,$name,You entered your interests as:
        "
      •  
      • foreach($_POST['interests'as $value
      •  
      •  
      • echo "
      • $value
      • n"
      •  
      •  
      • echo '
      '
    28.  
    29.  
    30. else 
    31.  
    32.  
    33. echo '

      Please go back and fill out the form again.

      '
    34.  
    35.   ?>
    36.  

    数组和字符串

    数组和字符串的转换:

    1. $array=explode(separator,$string); 
    2. $string=implode(glue,$array); 

    分隔符(separator)、胶合(glue),当把一个数组转变成一个字符串时,将会设置胶合——将被插入到生成字符串中的数组值之间的字符和代码,当把字符串转变成数组时,要制定分隔符,它是描述生成数组中的不同元素之间的链接的代码.

    PHP实例源码如下:

    1. $string1='Mon-Tue-Wed-Thur-Fri'
    2. $days=explode('-',$string1); 
    3. $days有5个元素:0=>'Mon'… 
    4. $string2=implode(',',$days); 
    5. //$string2现在是一个逗号分隔的一个星期中各天的列表:Mon,Tue…; 

    上例中arr.php中部分可以改为:

    1. if(isset($_POST['interests'])){ 
    2. $interests=implode(',',$_POST['interests']); 
    然后可以将$interests作为字符串输出。

    总结技巧:

    join()函数时implode()函数的同义词

    explode()函数第三个可选的参数是一个数字,用于限制将创建多少个数组元素。

    数组排序:

    可以使用sort()按值对数组进行排序,但是它会丢弃原来的键,在排序过程之后,将会重置数组的键,因此,如果键--值关系很重要,最好不要用这个函数.

    用asort()按值进行排序,会维持键。

    可以使用ksort()按键对数组排序。

    如果把上面三个函数分别改为rsort()、arsort()和krsort(),则能够以倒叙对数组排序。

    ----arrsort.php实例源码如下:

    1.  
    2.   
    3.     $movies=array(10=>'Ca',9=>'To',2=>'THe',8=>'Sideways',7=>'Donnie'); 
    4. echo '

      In their original order:

      Rating Title:
      '
    5. foreach($movies as $key=>$value
    6. echo "$keyt$valuen"
    7. echo '

      '
    8. echo '

      Sorted by title:

      Rating Title:
      '
    9. asort($movies);               //按值对数组进行排序。 
    10. foreach($movies as $key=>$value
    11. echo "$keyt$valuen"
    12. echo '

      '
    13. echo '

      Sorted by rating:

      Rating Title:
      '
    14. krsort($movies);           //按键进行排序,并倒置数组位置。 
    15. foreach($movies as $key=>$value
    16. echo "$keyt$valuen"
    17. echo '

      '
    18. ?> 
    19.  
    分享到:
    php foreach 循环遍历数组方法 - php数组
    php foreach 循环遍历数组方法 foreach 语句用于循环遍历数组.每进行一次循环,当前数组元素的值就会被赋值给 value 变量(数组指针会逐一地移动) - 以此类推,语法如下: foreach (array as value)  {      code to be executed;  }  下面的例子示范了一个循环,...
    php基础教程-数组操作 - php数组
    php基础教程-数组操作 如果您有很大的一个数组,而所要完成的仅是找出一个存在的给定值,您可以使用in_array()以返回true或false,如下代码将输出“Not found in this array”,因为您将在$namesArray中寻找一个并不存在的“Alber”. 如果您有很大的一个数组,而所要完成的仅是找出一个存在的给...
    •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
    • 在这里……