热门标签 | 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.  

    推荐阅读
    • 本文介绍了拍摄高质量Vlog所需的设备,包括索尼A7 III相机、蔡司镜头、罗德麦克风、单反稳定器、苹果手机及其配件、灯光设备等。此外,还探讨了后期制作所需的软件工具,如剪辑、特效和调色软件。无论你是业余爱好者还是专业创作者,选择合适的设备至关重要。 ... [详细]
    • QUIC协议:快速UDP互联网连接
      QUIC(Quick UDP Internet Connections)是谷歌开发的一种旨在提高网络性能和安全性的传输层协议。它基于UDP,并结合了TLS级别的安全性,提供了更高效、更可靠的互联网通信方式。 ... [详细]
    • 探讨一个老旧 PHP MySQL 系统中,时间戳字段不定期出现异常值的问题及其可能原因。 ... [详细]
    • 国内BI工具迎战国际巨头Tableau,稳步崛起
      尽管商业智能(BI)工具在中国的普及程度尚不及国际市场,但近年来,随着本土企业的持续创新和市场推广,国内主流BI工具正逐渐崭露头角。面对国际品牌如Tableau的强大竞争,国内BI工具通过不断优化产品和技术,赢得了越来越多用户的认可。 ... [详细]
    • 优化ListView性能
      本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
    • 郑州大学在211高校中的地位与排名解析
      本文将详细解读郑州大学作为一所位于河南省的211和双一流B类高校,在全国211高校中的地位与排名,帮助高三学生更好地了解这所知名学府的实力与发展前景。 ... [详细]
    • 深入理解 Oracle 存储函数:计算员工年收入
      本文介绍如何使用 Oracle 存储函数查询特定员工的年收入。我们将详细解释存储函数的创建过程,并提供完整的代码示例。 ... [详细]
    • 优化ASM字节码操作:简化类转换与移除冗余指令
      本文探讨如何利用ASM框架进行字节码操作,以优化现有类的转换过程,简化复杂的转换逻辑,并移除不必要的加0操作。通过这些技术手段,可以显著提升代码性能和可维护性。 ... [详细]
    • 本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ... [详细]
    • 电子元件封装库:三极管、MOS管及部分LDO(含3D模型)
      本资源汇集了常用的插件和贴片三极管、MOS管以及部分LDO的封装,涵盖TO和SOT系列。所有封装均配有高质量的3D模型,共计96种,满足日常设计需求。 ... [详细]
    • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
    • CSS 布局:液态三栏混合宽度布局
      本文介绍了如何使用 CSS 实现液态的三栏布局,其中各栏具有不同的宽度设置。通过调整容器和内容区域的属性,可以实现灵活且响应式的网页设计。 ... [详细]
    • 本文详细介绍了如何使用PHP检测AJAX请求,通过分析预定义服务器变量来判断请求是否来自XMLHttpRequest。此方法简单实用,适用于各种Web开发场景。 ... [详细]
    • 小红书提高MCN机构入驻门槛,需缴纳20万元保证金
      近期,小红书对MCN机构的入驻要求进行了调整,明确要求MCN机构在入驻时需缴纳20万元人民币的保证金。此举旨在进一步规范平台内容生态,确保社区的真实性和用户体验。 ... [详细]
    • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
      本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
    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社区 版权所有