Blogger Information
Blog 22
fans 1
comment 1
visits 22280
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
PHP中的变量、数组和流程控制---PHP培训十期线上班
Miss灬懒虫
Original
710 people have browsed it

PHP中的变量、数组和流程控制

PHP 常量

概述

  • 常量,是一种特殊变量,其命名不需要使用“$”符号,但是名称依然要遵循PHP变量的标识符规范;
  • 常量,是仅允许初始化一次(不允许更新)的“只读变量”;
  • 常量,没有作用域的限制,一般常用来表示状态或数据共享;
  • 常量的创建包括,使用define()函数创建变常量,define()函数创建的常量,其值可以是表达式;若使用const指令创建常量,其值只能是字面量;

运行效果

单、双引号的区别

PHP 数组

概述

  • 通过字面量创建,也就是将多个数组元素,放在一个对中括号[]内中,元素之间使用逗号分隔;
  • 通过赋值的方式,向数组中逐个添加/追加到数组中;
  • 根据数组的索引不同,可以将数组分为“索引数组”和“关联数组”;
  • 索引数组,是指数组的元素“键名”是数值的数组。如果索引数组的“键名”是连续的数值,则键名可以省略索引数组的默认是从0 开始的;
  • 关联数据组,是指数组的元素“键名”是字符串的数组(键名的命名依然遵循PHP的命名规范)。
  • 除了一维数组外,我们还会常用到二维数组,你可将他看做一个表格,外面的索引代表“行”,被包含数组的索引就是“列”;

运行效果

PHP 流程控制-分支控制

概述

  • if 单分支;
  • if - else 双分支;
  • if -elseif -else 多分支;
  • switch-case -break 多分支简化,多用于单值判断;

运行效果

PHP代码

  1. <?php
  2. /*1-PHP中的常量:
  3. 1.1常量,是一种特殊变量,其命名不需要使用“$”符号,但是名称依然要遵循PHP变量的标识符规范;
  4. 1.2常量,是仅允许初始化一次(不允许更新)的“只读变量”;
  5. 1.3常量,没有作用域的限制,一般常用来表示状态或数据共享;
  6. 1.4常量的创建:
  7. 1.4.1 使用define()函数创建变常量,define()函数创建的常量,其值可以是表达式;
  8. 1.4.2 使用const 指令创建常量,其值只能是字面量;
  9. **/
  10. //示例 1.1 define() 的使用
  11. $version = '7.3';
  12. //其常量赋值使用了表达式表示
  13. define('PHP_Version', 'Hello PHP! The Version is' . $version);
  14. echo 'PHP_Version:' . PHP_Version . '<br>';
  15. //其常量赋值使用字面量表示
  16. define('PHP_Version2', 'Hello PHP! The Version is NULL!');
  17. echo 'PHP_Version2:' . PHP_Version2 . '<br>';
  18. //示例 1.2 const 的使用
  19. const CONST_Ver='const 创建字面量';
  20. echo CONST_Ver.'<br>';
  21. /*2-PHP中单引号与双引号的使用
  22. 2.1单引号,内部的值会按照字面量,进行输出;
  23. 2.2双引号,内部的值,将会被解析,如果值中存在变量名或者特殊字符,则会被解析出来;
  24. */
  25. //示例 2.1 单引号
  26. $str='Ant蚂蚁体育';
  27. echo '$str 是一个体育品牌'.'<br>';
  28. //示例 2.2 双引号
  29. $str2='Ant蚂蚁体育';
  30. echo "$str2 是一个体育品牌".'<br>';
  31. //建议写法
  32. echo "{$str2}是一个体育品牌".'<br>';
  33. /*3-PHP中数组的创建
  34. 3.1通过字面量创建,也就是将多个数组元素,放在一个对中括号[]内中,元素之间使用逗号分隔;
  35. 3.2通过赋值的方式,向数组中逐个添加/追加到数组中;
  36. 3.3根据数组的索引不同,可以将数组分为“索引数组”和“关联数组”;
  37. 3.3.1 索引数组,是指数组的元素“键名”是数值的数组。如果索引数组的“键名”是连续的数值,则键名可以省略
  38. 索引数组的默认是从0 开始的;
  39. 3.3.2 关联数据组,是指数组的元素“键名”是字符串的数组(键名的命名依然遵循PHP的命名规范)。
  40. 3.4除了一维数组外,我们还会常用到二维数组,你可将他看做一个表格,外面的索引代表“行”,被包含数组的索引就是“列”;
  41. * */
  42. // 示例 3.1 字面量创建数组
  43. //索引数组
  44. $array_str=[1,2,3,4,5];
  45. //通过pre标签,将数组格式输出
  46. echo '<pre>'.print_r($array_str,true).'</pre><br>';
  47. echo '<br>';
  48. //关联数组
  49. $array_link=['link_id'=>106,'link_type'=>'JavaScript','link_name'=>'jQuery'];
  50. echo '<pre>'.print_r($array_link,true).'</pre><br>';
  51. echo '<br>';
  52. // 示例 3.2 赋值创建数组
  53. //索引数组
  54. $array_assign[]=107;
  55. $array_assign[]='PHP';
  56. $array_assign[]='laravel';
  57. echo '<pre>'.print_r($array_assign,true).'</pre><br>';
  58. echo '<br>';
  59. //关联数组
  60. $array_links['links_id']=109;
  61. $array_links['links_type']='HTML/CSS';
  62. $array_links['links_name']='JiUI';
  63. echo '<pre>'.print_r($array_links,true).'</pre><br>';
  64. echo '<br>';
  65. // 示例 3.3 访问数组中元素,$array_assign[]数组的第三个元素。
  66. //访问索引数组元素
  67. echo $array_assign[2].'<br>';
  68. echo '<br>';
  69. //访问关联数组元素
  70. echo $array_links['links_name'].'<br>';
  71. echo '<br>';
  72. // 示例 3.4 遍历数组
  73. //遍历索引数组
  74. echo '遍历索引数组<br>';
  75. foreach ($array_assign as $value){
  76. echo $value.','.'<br>';
  77. }
  78. echo '<br>';
  79. //遍历关联数组
  80. echo '遍历关联数组<br>';
  81. foreach ($array_links as $values){
  82. echo $values.','.'<br>';
  83. }
  84. echo '<br>';
  85. echo '遍历关联数组(含"元素键名")<br>';
  86. foreach ($array_links as $key=> $values){
  87. echo "{$key}=>{$values}<br>";
  88. }
  89. echo '<br>';
  90. // 示例 3.5 通过 list()和extract()语句,将数组中的元素,转换为单独的变量
  91. //索引数组
  92. echo '索引数组,转换为变量<br>';
  93. list($id,$type,$name)=$array_assign;
  94. echo "语言ID:{$id},语言类型:{$type},语言名称:{$name}<br>";
  95. echo '<br>';
  96. //关联数组
  97. echo '关联数组,转换为变量<br>';
  98. extract($array_links);
  99. //变量名默认是“关联数组”键名
  100. echo "语言ID:{$links_id},语言类型:{$links_type},语言名称:{$links_name}<br>";
  101. echo '<br>';
  102. // 示例 3.6 通过compact(),将变量转换为一个关联数组
  103. echo '通过compact(),将变量转换为一个数组<br>';
  104. $server_ip='192.168.1.76';
  105. $server_port=':8086';
  106. $server_str = compact('server_ip','server_port');
  107. echo '<pre>'. print_r($server_str,true) . '</pre>';
  108. // 示例 3.7 通过array_values(),将关联数组转化为索引数组
  109. $intArray=array_values($array_links);
  110. echo '<pre>'. print_r($array_links,true) . '</pre>';
  111. echo '<br>';
  112. // 示例 3.8 通过implode(),将数组拉平转化为字符串;
  113. //索引数组
  114. $assign_str=implode('#',$array_assign);
  115. echo $assign_str.'<br>';
  116. echo '<br>';
  117. // 示例 3.9 通过explode(),将字符串转化为数组;
  118. //索引数组
  119. $language_code='zh-CN,en-US,en-GB';
  120. $array_languagecode=explode(',',$language_code);
  121. echo '<pre>'.print_r($array_languagecode,true).'</pre>';
  122. echo '<br>';
  123. // 示例 3.8多维度数组
  124. //$account_info的索引是二维数组的“行”,嵌套数组的索引是二维数组的“列”;
  125. $account_info=[
  126. ['code'=>'P1','type'=>'部门主管','name'=>'小陈'],
  127. ['code'=>'P2','type'=>'职员','name'=>'小李'],
  128. ];
  129. //访问二数组的某个值
  130. echo $account_info[1]['name'], '<br>';
  131. //遍历二维数组内容元素
  132. foreach ( $account_info as $item) {
  133. echo "账号编码: {$item['code']},账号类型:{$item['type']},账号所有人:{$item['name']}<br>";
  134. }
  135. echo '<br><hr>';
  136. /*4-流程控制之 分支控制
  137. 4.1 if 单分支;
  138. 4.2 if - else 双分支;
  139. 4.3 if -elseif -else 多分支;
  140. 4.4 switch-case -break 多分支简化,多用于单值判断;
  141. * */
  142. //通用变量设置
  143. const GOOD_NAME='青椒';
  144. $number = 4;
  145. $discount = 1.0;
  146. $price = 4.68;
  147. // 示例 4.1 if单分支
  148. $number = 12;
  149. if($number>=10){
  150. $discount = 0.9;
  151. }
  152. $total=$price*$number*$discount;
  153. echo '商品名称:'.GOOD_NAME.',商品单价:'.$price.'元/公斤,
  154. 当前购买数量:'.$number.',当前折扣:'.$discount.',需支付总额:'.$total.'元';
  155. echo '<br><br>';
  156. // 示例 4.2 if - else 双分支
  157. $number = 8;
  158. if($number>=10){
  159. $discount = 0.9;
  160. }else{
  161. $discount = 1.0;
  162. }
  163. $total=$price*$number*$discount;
  164. echo '商品名称:'.GOOD_NAME.',商品单价:'.$price.'元/公斤,
  165. 当前购买数量:'.$number.',当前折扣:'.$discount.',需支付总额:'.$total.'元';
  166. echo '<br><br>';
  167. // 示例 4.3 if -elseif -else 多分支
  168. $number = 22;
  169. if($number>10 && $number<20){
  170. $discount = 0.9;
  171. }elseif($number>=20 && $number<30){
  172. $discount = 0.8;
  173. }elseif($number>30){
  174. $discount = 0.7;
  175. }else{
  176. $discount = 1.0;
  177. }
  178. $total=$price*$number*$discount;
  179. echo '商品名称:'.GOOD_NAME.',商品单价:'.$price.'元/公斤,
  180. 当前购买数量:'.$number.',当前折扣:'.$discount.',需支付总额:'.$total.'元';
  181. echo '<br><br>';
  182. // 示例 4.4 switch-case -break 多分支简化,多用于单值判断
  183. $number=35;
  184. switch ($number){
  185. case $number>10 && $number<20;
  186. $discount = 0.9;
  187. break;
  188. case $number>=20&& $number<30;
  189. $discount=0.8;
  190. break;
  191. case $number>=30;
  192. $discount=0.7;
  193. break;
  194. default:
  195. $discount = 1.0;
  196. }
  197. $total=$price*$number*$discount;
  198. echo '商品名称:'.GOOD_NAME.',商品单价:'.$price.'元/公斤,
  199. 当前购买数量:'.$number.',当前折扣:'.$discount.',需支付总额:'.$total.'元';
  200. echo '<br><br>';
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