博客列表 >常量,数组知识,分支控制

常量,数组知识,分支控制

任宽
任宽原创
2020年01月09日 15:11:31541浏览

0107作业 常量,数组知识,分支控制

常量的创建与访问

1.常量创建两种方式
define()const
define()创建常量可以用表达式,const只能用直接量。
在类里面创建常量不能用define() 只能用const

  1. <?php
  2. define('pai',3.14);
  3. const myname = 'RK007';
  4. echo pai.myname.'<br>';
  5. //define可以用表达式创建常量
  6. $domain = 'php.cn';
  7. define('MY_EMAIL', 'admin@' . $domain);
  8. echo MY_EMAIL.'<br>';
  9. //const不能使用表达式创建常量
  10. //const abc = 'admin@'.$domain ;
  11. class A
  12. {
  13. // const:可以创建类常量
  14. const NATION = 'CHINA';
  15. // define('USER_NAME', 'admin'); define()不能创建类常量
  16. }
  17. echo A::NATION, '<br>'; //A::NATION 类常量可以这样调用

单双引号做用异同

单引号: 内部的值,按字面量的形式进行处理

双引号: 内部的值, 将被解析,如果值是变量名或者特殊字符,会被解析出来

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

数组初始化方法,打印数组方法

  1. <?php
  2. //数组知识 索引数组 和 关联数组
  3. $arr1 =[1,2,3]; // 索引数组
  4. //$arr1[0] = 1;
  5. //$arr1[1] = 2;
  6. //$arr1[2] = 3; 逐个初始化
  7. //相当于$arr1[0=>1,1=>2,2=>3];
  8. $arr3[1]=1; $arr3[3]=3; $arr3[5]=5;
  9. //创建一个关联数组
  10. $arr2=['a1'=>'abc','b1'=>'bcd','c1'=>'cde'];
  11. echo $arr1[0].'<br>';
  12. echo $arr2['c1'].'<br>';
  13. echo '<div>'. print_r($arr1).'</div>'; // 不显示
  14. echo '<div>'. print_r($arr3,true).'</div>';
  15. var_dump($arr3);
  16. echo '<br>';
  17. //把数组中的值赋给一些变量 用list(); 只用于数字索引的数组,且假定数字索引从 0 开始。
  18. list($id, $name, $email) = $arr1;
  19. echo "id=>$id, name=>$name, email=>$email <br>";
  20. list($id, $name, $email) = $arr2;
  21. echo "id=>$id, name=>$name, email=>$email <br>"; //关联数组不能打印
  22. //“拉平”数组
  23. $arr4 = array('Hello','World!','I','love','CHINA!');
  24. echo implode(",",$arr4).'<br>';
  25. echo implode($arr4)."<br>";

将一个字符串转化成索引数组用exlode()

  1. <?php
  2. // 将一个字符串,转换成索引数组 用explode()
  3. $str = 'html,css,js,php,laravel';
  4. $str2 ='I love you';
  5. $arr = explode(',', $str);
  6. $arr2 = explode(' ', $str2);
  7. echo '<pre>' . print_r($arr, true) . '</pre>';
  8. print_r($arr2);

foreach()遍历
关联数组转换为变量。
关联数组转换为索引数组

  1. <?php
  2. $products1 = ['id'=>100, 'name'=> 'phone', 'price'=>5000];
  3. // foreach()遍历
  4. foreach ($products1 as $value) {
  5. echo $value , '<br>'; //直接输出值
  6. }
  7. foreach ($products1 as $key=>$value) {
  8. echo "['$key'] => $value <br>"; //键和值对应输出
  9. }
  10. echo '<br>';
  11. //关联数组转换为变量
  12. extract($products1);
  13. echo "$id,$name,$price";
  14. //关联数组转换为索引数组,直接用 array_values()
  15. echo '<pre>' .print_r($arr05,true) .'</pre>';
  16. $arr05 =array_values($products1);
  17. echo '<pre>' .print_r($arr05,true) .'</pre>';

多维数组,主要学习二维数组(数组的元素也是数组)

  1. <?php
  2. //二维数组
  3. $array06 =[
  4. [1,2,3] ,
  5. [4,5,6] ,
  6. [7,8,9]
  7. ] ;
  8. $array07 =[
  9. ['id'=>100,'name'=>'a','score'=>60],
  10. ['id'=>101,'name'=>'b','score'=>60],
  11. ['id'=>102,'name'=>'c','score'=>60],
  12. ];
  13. echo $array06[1][1].'<br>';
  14. echo $array07[0]['name'],'<br>'; //访问某一个具体元素

分支结构(选择结构)

三种基本的结构,顺序,分支,循环。
if 单分支
if else双分支
if elseif多分支
switch case 简化多分支

  1. <?php
  2. $count = 5;
  3. $price =10;
  4. $discount =0.8;
  5. switch ($discount) {
  6. case 1:
  7. $total = $count * $price *1;
  8. break;
  9. case 0.9:
  10. $total = $count * $price *0.9;
  11. break;
  12. case 0.8:
  13. $total = $count * $price *0.8;
  14. break;
  15. case 0.7:
  16. $total = $count * $price *0.7;
  17. break;
  18. default:
  19. exit('不支持的折扣率');
  20. }
  21. echo "购买数量: $count, 总金额: $total, 折扣率: $discount <hr>";

小结

学习本节数组和分支知识。
(1)常量:define() ,const;
(2)单双引号功能异同,(双引号内可以解析变量,特殊字符)
(3)索引数组,关联数组。
3.1索引数组赋值给一些变量,list()
3.2拉平数组implode()
3.3字符串转数组explode()
3.4遍历数组foreach()
3.5关联数组转索引数组array_value()
3.6关联数组转变量 extract()
(4)二维数组
(5)分支结构,switch,最多用于单值判断。
在学习中要理清楚思路,一般学习一个新知识点思路是:
1.是什么,以什么形式存在,有什么用。
2.怎么实现。
3.要注意的问题。
比如,键为字符串的是关联数组,关联数组键名符合PHP命名规范。
关联数组常用操作是,初始化,取值,遍历,可以转换为变量。
关联数组初始化举例:
$arr1 =['id'=>1,'name'=>'xiaoming','address'='CHINA'];
……
每个知识点首先了解基本功能,也要多思考,多练习。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议