博客列表 >实例演示变量传递,流程控制分支与循环,数组的遍历与模板语法

实例演示变量传递,流程控制分支与循环,数组的遍历与模板语法

P粉479712293
P粉479712293原创
2022年10月13日 20:43:27331浏览

题目一:变量赋值中的默认值传递与应用传递

php文件如下:

  1. <?php
  2. // *变量赋值
  3. // *1.默认值传递:
  4. $usernam='关云长';
  5. // *2.传给另一变量:
  6. $myName=$usernam;
  7. // *3.打印:
  8. printf('$username=%s,$myName=%s<br>',$usernam,$myName);
  9. // *4.引用传递
  10. $yourName=&$username;
  11. $yourName='关羽';
  12. // *5.打印
  13. printf('$yourName=%s,$username=%s',$yourName,$username);

浏览器运行效果如下:

题目二:从类中创建一个对象(实例)

php文件如下:

  1. <?php
  2. // *从类中创建一个对象(实例)
  3. $obj=new class('关羽'){
  4. public string $usernam;
  5. public function __construct(string $usernam)
  6. {
  7. $this->usernam=$usernam;
  8. }
  9. };
  10. echo gettype($obj).'<br>';
  11. echo $obj->usernam.'<br>';

浏览器运行效果如下:

题目三:自定义函数的一般调用方式与内置的函数调用方式与数组调用方式

php文件如下:

  1. <?php
  2. // *自定义函数
  3. function sanguo1(string $username):string{
  4. return '三国演义,'.$username;
  5. }
  6. echo sanguo1('关公').'<br>';
  7. // *call_user_func(函数,参数列表)
  8. echo call_user_func('sanguo1','诸葛亮').'<br>';
  9. //*---------------------------------------------------
  10. function sanguo2(string $username2,$feature):string{
  11. return '五虎上将:'.$username2.',特点是:'.$feature;
  12. }
  13. $params=['关云长','万夫不挡之勇'];
  14. echo call_user_func_array('sanguo2',$params).'<br>';

浏览器运行效果如下:

题目四:多分支中的条件限制

php文件如下:

  1. <?php
  2. // *多分支
  3. // *deposit:存款
  4. $deposit=100000;
  5. if($deposit>=1 && $deposit<100000){
  6. echo"{$deposit}元,为一般会员。<br>";
  7. }elseif($deposit>=100000 && $deposit<500000){
  8. echo"{$deposit}元,为铜卡会员。<br>";
  9. }elseif($deposit>=500000 && $deposit<1000000){
  10. echo"{$deposit}元,为银卡会员。<br>";
  11. }elseif($deposit>=1000000){
  12. echo"{$deposit}元,为金卡会员。<br>";
  13. }else{
  14. echo"数据错误!";
  15. }

浏览器运行效果如下:

题目五:多分之的语法糖:switch

php文件如下:

  1. <?php
  2. // *多分支的语法糖
  3. $deposit=600000;
  4. switch(true){
  5. case $deposit>=1 && $deposit<100000:
  6. echo"{$deposit}元,为一般会员。<br>";
  7. break;
  8. case $deposit>=100000 && $deposit<500000:
  9. echo"{$deposit}元,为铜卡会员。<br>";
  10. break;
  11. case $deposit>=500000 && $deposit<1000000:
  12. echo"{$deposit}元,为银卡会员。<br>";
  13. break;
  14. case $deposit>=1000000 :
  15. echo"{$deposit}元,为金卡会员。<br>";
  16. break;
  17. default:
  18. echo"数据错误!";
  19. }

浏览器运行效果如下:

题目六:两种方式的打印及索引数组与关联数组

php文件如下:

  1. <?php
  2. $sanguo=['魏国','蜀国','吴国'];
  3. // *人性化打印
  4. print_r($sanguo);
  5. // *格式化打印
  6. printf('<pre>%s</pre>',print_r($sanguo,true));
  7. // *索引数组
  8. $lgz=['0'=>'刘备','1'=>'关羽','2'=>'张飞'];
  9. printf('<pre>%s</pre>',print_r($lgz,true));
  10. // *这样写代替索引数组
  11. $lgz=['刘备','关羽','张飞'];
  12. printf('<pre>%s</pre>',print_r($lgz,true));
  13. // *关联数组
  14. $liubei=[0=>1,1=>'刘备',2=>'剑'];
  15. $liubei=['id'=>1,'name'=>'刘备','weapon'=>'剑'];
  16. printf('<pre>%s</pre>',print_r($liubei,true));
  17. // *访问关联数组某个元素
  18. echo $liubei['name'].'的武器是:'.$liubei['weapon'].'<br>';

浏览器运行效果如下:

题目七:三种循环并渲染在页面上

php文件如下:

  1. <?php
  2. // *循环的入口判断
  3. $sanguo=['魏国','蜀国','吴国'];
  4. $i=0;
  5. echo '数组长度:',count($sanguo),'<br>';
  6. $list='<ul>';
  7. $i=0;
  8. while($i<count($sanguo)){
  9. $list.="<li>{$sanguo[$i]}</li>";
  10. $i++;
  11. }
  12. $list.='</ui>';
  13. echo $list;
  14. echo '<hr>';
  15. // *循环的出口判断
  16. $list1='<ul>';
  17. $i1=0;
  18. do{
  19. $list1.="<li>{$sanguo[$i1]}</li>";
  20. $i1++;
  21. }while($i1<count($sanguo));
  22. $list1.='</ui>';
  23. echo $list1;
  24. echo '<hr>';
  25. // *for循环
  26. $list2='<ul>';
  27. for($i2=0;$i2<count($sanguo);$i2++){
  28. $list2.="<li>{$sanguo[$i2]}</li>";
  29. }
  30. $list2.='</ui>';
  31. echo $list2;

浏览器运行效果如下:

题目八:foreach中键与值的打印

php文件如下:

  1. <?php
  2. $lgz=['刘备','关羽','张飞'];
  3. $liubei=['id'=>1,'name'=>'刘备','weapon'=>'剑'];
  4. // *foreach中键与值的打印
  5. foreach($lgz as $key =>$value ){
  6. printf('[%s]=>%s<br>',$key,$value);
  7. }
  8. echo '<hr>';
  9. foreach($liubei as $key =>$value ){
  10. printf('[%s]=>%s<br>',$key,$value);
  11. }

浏览器运行效果如下:

题目九:二维数组及其打印

php文件如下:

  1. <?php
  2. // *二维数组及其打印
  3. $lgz=[
  4. 0=>['id'=>1,'name'=>'刘备','weapon'=>'剑'],
  5. 1=>['id'=>2,'name'=>'关羽','weapon'=>'关刀'],
  6. 2=>['id'=>3,'name'=>'张飞','weapon'=>'长茅'],
  7. ];
  8. printf('<pre>%s</pre>',print_r($lgz,true));

浏览器运行效果如下:

题目十:二维数组在页面上的渲染

php文件如下:

  1. <?php
  2. // *二维数组在页面上的渲染
  3. // *二维数组
  4. $sanguo = [
  5. 0=>['id'=>1,'name'=>'曹操', 'gender'=>1, 'nationality'=>'魏国'],
  6. 1=>['id'=>2,'name'=>'刘备', 'gender'=>1,'nationality'=>'蜀国'],
  7. 2=>['id'=>3,'name'=>'孙权','gender'=>1, 'nationality'=>'吴国'],
  8. 3=>['id'=>4,'name'=>'蔡文姬','gender'=>0, 'nationality'=>'魏国'],
  9. ];
  10. // *表格的设置
  11. $table = '<table border="1" width="400" cellspacing="0" cellpadding="3" align="center">';
  12. $table .= '<caption>三国人物信息表</caption>';
  13. $table .= '<thead bgcolor="#ccc"><tr><th>ID</th><th>姓名</th><th>性别</th><th>国籍</th></tr></thead>';
  14. $table .= '<tbody align="center">';
  15. // *遍历表格中二维数组的数据
  16. foreach ($sanguo as $user) {
  17. // print_r($user);
  18. $table .= '<tr>';
  19. $table .= "<td>{$user['id']}</td>";
  20. $table .= '<td>'.$user['name'].'</td>';
  21. $table .= '<td>'.($user['gender'] ? '男' : '女').'</td>';
  22. $table .= '<td>'.$user['nationality'].'</td>';
  23. $table .= '</tr>';
  24. }
  25. // *拼接表格的尾部
  26. $table .= '</tbody>';
  27. $table .= '</table>';
  28. //* 打印表格到页面中
  29. echo $table;

浏览器运行效果如下:

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