博客列表 >PHP常量、双引号、数组、分支控制(0107)

PHP常量、双引号、数组、分支控制(0107)

暴风战斧
暴风战斧原创
2020年01月27日 18:51:54579浏览

编程思路

此次作业主要思路是复习理解知识点并将其分类,再写自己的示例检查代码效果和排错!

作业总结

这次作业中遇到了较多提示(应该不是报错),自己查询翻译了下应该是提示,但是代码运行都是正常的,是不是php集成环境的提示?然后我对数组的转换函数,如‘implode()’,其实我在w3c客户端查询了其说明,在自己写示例时脑子更加清晰,手册啥的随时备查吧!

1、PHP常量的创建与访问

  • 常量的两种创建方式‘define()’和‘const’
  1. <?php
  2. // 1.php常量两种创建方式
  3. // define(),可以设置是否大小写敏感
  4. // 敏感
  5. define('APPLE_COLOR','white');
  6. echo APPLE_COLOR;
  7. // 不敏感
  8. define('APPLE_NAME','苹果',true);
  9. echo apple_name . '<br>';
  10. // const 只能用字面量
  11. const APPLE_NAME1 = '苹果手机';
  12. echo APPLE_NAME1;
  13. ?>
  • 效果图

    2、双引号对变量和特殊字符的处理

  • 演示代码
  1. <?php
  2. // 2.双引号对变量和特殊字符的处理
  3. $wps = '好用的办公软件';
  4. // 双引号解析变量和转义符的使用
  5. echo "$wps" . '<br>';
  6. echo "\$wps的值是$wps". '<br>';
  7. echo "\\$wps";
  8. echo '<hr>';
  9. // 特殊字符的处理
  10. echo "\$wps的值是\t$wps";
  11. echo '<hr>';
  12. echo "\$wps的值是\t${wps}very good!";
  13. echo '<hr>';
  14. ?>
  • 效果图

    3、索引数组与关联数组的常用操作

  • 演示代码
  1. <?php
  2. // 3.索引数组和关联数组的常用操作
  3. // 索引数组---创建与访问
  4. $student1[0] = 1001;
  5. $student1[1] = '小明';
  6. $student1[2] = 15;
  7. $str = print_r($student1,true);
  8. echo $str . '<br>';
  9. // 参看变量类型
  10. echo gettype($student1) . '<br>';
  11. // 不写键名
  12. $student2[] = 1002;
  13. $student2[] = '小李';
  14. $student2[] = 16;
  15. $str = print_r($student2,true);
  16. echo $str . '<br>';
  17. // 通过字面量一次性添加多个元素
  18. $student3 = [1003, '小张', 13];
  19. // 源码格式打印
  20. echo '<pre>' . print_r($student2,true) . '</pre>' . '<br>';
  21. // 使用var_dump()查看变量或数组的更多信息
  22. var_dump($student1,$student2,$student3);
  23. // 数组某个元素,当成变量访问
  24. echo $student3[2] . '<br>';
  25. // foreach()遍历数组
  26. foreach ($student1 as $student) {
  27. echo $student . '<br>';
  28. }
  29. // list():把数组中的值赋给一些变量,仅用于索引数组
  30. list($id, $name, $age) = $student3;
  31. echo "id=>$id, name=>$name, age=>$age <br>";
  32. echo "名字叫${name}的同学,学号是${id},年龄是${age}!" . '<br>';
  33. // implode():将索引数组转为字符串:拉平一个数组,存储到数据表
  34. $str = implode(',',$student3);
  35. echo gettype($str), ':', $str, '<br>';
  36. // 将一个字符串,再转换成索引数组
  37. $str = '1004,小刘,20';
  38. $arr = explode(',',$str);
  39. echo '<pre>' . print_r($arr,true) . '</pre>';
  40. echo '<hr>';
  41. // 关联数组---创建与访问
  42. // 键名采用语义化的字符串,访问时不再依赖于元素在数组中的位置
  43. $teacher1['id'] = 6001;
  44. $teacher1['name'] = '刘老师';
  45. $teacher1['age'] = 39;
  46. echo '<pre>' . print_r($teacher1,true) . '</pre>' . '<br>';
  47. // 字面量方式创建
  48. $teacher2 = ['id'=>6002, 'name'=>'王老师', 'age'=>56];
  49. echo "${teacher2['name']}编号是${teacher2['id']},今年${teacher2['age']}了,外号\"old王\"" . '<br>';
  50. // foreach()遍历数组
  51. foreach ($teacher2 as $teacher) {
  52. echo $teacher . '<br>';
  53. }
  54. foreach ($teacher2 as $key=>$teacher) {
  55. echo "['$key'] => $teacher, <br>";
  56. }
  57. // extract():将关联数组转换为变量,键名为变量名,键值为变量值
  58. extract($teacher2);
  59. echo "id=>$id, name=>$name, age=>$age <br>";
  60. // compact():将多个变量组装成一个数组
  61. $tec_id = 6003;
  62. $tec_name = '赵老师';
  63. $tec_age = '50';
  64. $teacher3 = compact(tec_id,tec_name,tec_age);
  65. echo gettype($teacher3) . '<br>';
  66. echo '<pre>' . print_r($teacher3,true) . '</pre>'. '<br>';
  67. // 将关联数组转为索引数组
  68. $tec = array_values($teacher3);
  69. echo '<pre>' . print_r($tec,true) . '</pre>';
  70. // 多维数组的创建与访问
  71. $teachers = [
  72. ['id'=>6001, 'name'=>'刘老师', 'age'=> 39],
  73. ['id'=>6002, 'name'=>'王老师', 'age'=> 56],
  74. ['id'=>6003, 'name'=>'赵老师', 'age'=> 50],
  75. ];
  76. // 访问
  77. echo '<pre>' . print_r($teachers,true) . '</pre>'. '<br>';
  78. echo $teachers[0]['name'] . '<br>';
  79. foreach ($teachers as $Teacher) {
  80. echo "id=>${Teacher['id']}, name=>${Teacher['name']}, price=>${Teacher['age']} <br>";
  81. }
  82. ?>
  • 效果图

    4、分支控制的所有形式的基本实现

  • 演示代码
  1. <?php
  2. // 4.分支控制的基本实现
  3. $age = 20;
  4. $gender = '男';
  5. $retire = '好好工作';
  6. // 单分支
  7. if ($age < 55) {
  8. $retire = '好好工作!';
  9. }
  10. echo "性别:$gender, 年龄:$age, 退休:$retire <hr>";
  11. // 双分支
  12. $age = 58;
  13. if ($age >= 55 && $age < 65) {
  14. $retire = '可以退休,鼓励再干几年!';
  15. }
  16. echo "性别:$gender, 年龄:$age, 退休:$retire <hr>";
  17. // 多分支
  18. $age = 66;
  19. if ($age >= 55 && $age < 65) {
  20. $retire = '可以退休,鼓励再干几年!';
  21. } elseif ($age >=65) {
  22. $retire = '干了一辈子了,享享清福吧!';
  23. }
  24. echo "性别:$gender, 年龄:$age, 退休:$retire <hr>";
  25. // switch()简化多分支
  26. $age = 50;
  27. switch (true) {
  28. case $age >= 55 && $age < 65;
  29. $retire = '可以退休,鼓励再干几年!';
  30. break;
  31. case $age >=65;
  32. $retire = '干了一辈子了,享享清福吧!';
  33. break;
  34. default:
  35. $retire = '好好工作!';
  36. }
  37. echo "性别:$gender, 年龄:$age, 退休:$retire <hr>";
  38. // switch()更多应用场景是单值判断
  39. $age = 51;
  40. $gender = '女';
  41. switch ($gender) {
  42. case '女':
  43. $retire = '可以退休,也鼓励再干几年!';
  44. break;
  45. case '男':
  46. $retire = '不可以退休!!!';
  47. break;
  48. default:
  49. exit('请选择性别');
  50. }
  51. echo "性别:$gender, 年龄:$age, 退休:$retire <hr>";
  52. ?>
  • 效果图
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议