Blogger Information
Blog 3
fans 0
comment 0
visits 1624
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
常量,数组知识,分支控制
任宽
Original
542 people have browsed it

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'];
……
每个知识点首先了解基本功能,也要多思考,多练习。

Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:课堂上的讲的知识是有限的, 重点还是要靠课后呀
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post