热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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.  

    推荐阅读
    • Windows 7 64位系统下Redis的安装与PHP Redis扩展配置
      本文详细介绍了在Windows 7 64位操作系统中安装Redis以及配置PHP Redis扩展的方法,包括下载、安装和基本使用步骤。适合对Redis和PHP集成感兴趣的开发人员参考。 ... [详细]
    • 雨林木风 GHOST XP SP3 经典珍藏版 V2017.11
      雨林木风 GHOST XP SP3 经典珍藏版 V2017.11 ... [详细]
    • 本文详细介绍了如何在不同操作系统和设备上设置和配置网络连接的IP地址,涵盖静态和动态IP地址的设置方法。同时,提供了关于路由器和机顶盒等设备的IP配置指南。 ... [详细]
    • 在年前忙碌的家务和年后走亲访友之后,终于有时间重新投入到编程的世界中。年前遇到了连通器问题的困扰,希望今晚能够顺利解决。新的一年,新的开始,期待在技术领域取得更大的进步。 ... [详细]
    • Android Studio 安装与配置指南
      本教程详细介绍了如何下载并安装 Android Studio,包括设置 SDK 路径和优化启动性能的方法。通过这些步骤,您可以顺利地开始开发 Android 应用。 ... [详细]
    • 本文详细介绍了福昕软件公司开发的Foxit PDF SDK ActiveX控件(版本5.20),并提供了关于其在64位Windows 7系统和Visual Studio 2013环境下的使用方法。该控件文件名为FoxitPDFSDKActiveX520_Std_x64.ocx,适用于集成PDF功能到应用程序中。 ... [详细]
    • Appium + Java 自动化测试中处理页面空白区域点击问题
      在进行移动应用自动化测试时,有时会遇到某些页面没有返回按钮,只能通过点击空白区域返回的情况。本文将探讨如何在Appium + Java环境中有效解决此类问题,并提供详细的解决方案。 ... [详细]
    • 如何清除Chrome浏览器地址栏的特定历史记录
      在使用Chrome浏览器时,你可能会发现地址栏保存了大量浏览记录。有时你可能希望删除某些特定的历史记录而不影响其他数据。本文将详细介绍如何单独删除地址栏中的特定记录以及批量清除所有历史记录的方法。 ... [详细]
    • JavaScript 中创建对象的多种方法
      本文详细介绍了 JavaScript 中创建对象的几种常见方式,包括对象字面量、构造函数和 Object.create 方法,并提供了示例代码和属性描述符的解释。 ... [详细]
    • 本文详细介绍了如何在PHP中实现基于概率的随机抽奖功能。通过实例代码,解释了抽奖逻辑、奖品设置及结果统计的方法。适合PHP开发者参考学习。 ... [详细]
    • 本文对宋代词人朱雍的《迷神引》进行翻译和赏析,深入探讨其词作的艺术特色与情感表达。 ... [详细]
    • 本文详细介绍了优化DB2数据库性能的多种方法,涵盖统计信息更新、缓冲池调整、日志缓冲区配置、应用程序堆大小设置、排序堆参数调整、代理程序管理、锁机制优化、活动应用程序限制、页清除程序配置、I/O服务器数量设定以及编入组提交数调整等方面。通过这些技术手段,可以显著提升数据库的运行效率和响应速度。 ... [详细]
    • 利用Selenium与ChromeDriver实现豆瓣网页全屏截图
      本文介绍了一种使用Selenium和ChromeDriver结合Python代码,轻松实现对豆瓣网站进行完整页面截图的方法。该方法不仅简单易行,而且解决了新版Selenium不再支持PhantomJS的问题。 ... [详细]
    • 本文介绍如何使用PHP在WordPress中根据分类类别ID或名称获取所有相关文章,提供详细的方法和代码示例。 ... [详细]
    • 本题来自WC2014,题目编号为BZOJ3435、洛谷P3920和UOJ55。该问题描述了一棵不断生长的带权树及其节点上小精灵之间的友谊关系,要求实时计算每次新增节点后树上所有可能的朋友对数。 ... [详细]
    author-avatar
    满国风_903
    这个家伙很懒,什么也没留下!
    Tags | 热门标签
    RankList | 热门文章
    PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有