博主信息
博文 49
粉丝 0
评论 3
访问量 33877
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
实例演示访问函数外部的5种方式及其他
P粉479712293
原创
768人浏览过

题目1:php访问函数外部变量的5种方式之一:global关键字

php文件:

  1. <?php
  2. // *php访问函数外部变量的5种方式之一:global关键字
  3. $username='关云长';
  4. function sanguo():string{
  5. global $username;
  6. return '过五关斩六将,'.$username;
  7. }
  8. echo sanguo(),'<br>';

浏览器运行效果:

题目2:php访问函数外部变量的5种方式之二:$GLOBALS[‘$outer’]

php文件:

  1. <?php
  2. // *php访问函数外部变量的5种方式之二:$GLOBALS['$outer']
  3. $username='赵子龙';
  4. function sanguo():string{
  5. return '大战长坂坡,'.$GLOBALS['username'];
  6. }
  7. echo sanguo(),'<br>';

浏览器运行效果:

题目3:php访问函数外部变量的5种方式之三:function()use($outer){…}

php文件:

  1. <?php
  2. // *function()use($outer){...}
  3. $username='诸葛亮';
  4. $sanguo=function()use($username):string{
  5. return '草船借箭,'.$username;
  6. };
  7. echo $sanguo(),'<br>';

浏览器运行效果:

题目4:php访问函数外部变量的5种方式四:箭头函数:fn()=>(…)

php文件:

  1. <?php
  2. // *箭头函数:fn()=>(...)
  3. $username='刘备';
  4. $sanguo=fn()=>'三顾茅庐,'.$username;
  5. echo $sanguo(),'<br>';

浏览器运行效果:

题目5:php访问函数外部变量的5种方式五:function($outer){…}

php文件:

  1. <?php
  2. // *function($outer){...}
  3. $username='张飞';
  4. $sanguo=function($username):string{
  5. return'仗百长茅,'.$username;
  6. };
  7. echo $sanguo($username),'<br>';

浏览器运行效果:

题目6:在函数外部访问函数内部的私有变量

php文件:

  1. <?php
  2. // *在函数外部访问函数内部的私有变量
  3. $sanguo=function(){
  4. // *私有变量
  5. $username='黄忠';
  6. // *如果外部需要这个私有变量,可以将它作为返回数据的赠品处理
  7. // *返回一个数组:[正常返回的数据,私有变量]
  8. return ['老当益壮,',$username];
  9. };
  10. // *将数组解构到独立变量的序列中:
  11. list($a,$b)=$sanguo();
  12. // *打印各独立变量
  13. echo $a,$b,'<br>';

浏览器运行效果:

题目7:常量声明的两种方式:函数方式define与自定义方式const

php文件:

  1. <?php
  2. // *常量声明的两种方式:函数方式define与自定义方式const
  3. define('USER_NAME','曹操');
  4. const name='刘备';
  5. function sanguo():string{
  6. return sprintf('三国,%s,%s',USER_NAME,name);
  7. }
  8. echo sanguo().'<br>';

浏览器运行效果:

题目8:

php文件:

  1. <?php
  2. // *预定义常量与魔术常量
  3. // *预定义常量
  4. echo 'php版本:'.PHP_VERSION.'<br>';
  5. echo '操作系统:'.PHP_OS.'<br>';
  6. // *魔术常量(值为变化的)
  7. echo '当前行号:'.__LINE__.'<br>';
  8. echo '当前文件:'.__FILE__.'<br>';
  9. echo '当前路径:'.__DIR__.'<br>';

浏览器运行效果:

题目9:php中字符串的单引号与双引号

php文件:

  1. <?php
  2. // *php中字符串的单引号与双引号
  3. // *单引号:不解析变量与转义符,适合不含变量与转义字符的静态文本
  4. $username='曹操';
  5. $sanguo='三国人物:\n\r $username';
  6. echo $sanguo;
  7. // *单引号的语法糖:nowdoc
  8. $sanguo=<<<'rw'
  9. <header>
  10. <nav>
  11. <a href="">曹操</a>
  12. <a href="">刘备</a>
  13. <a href="">孙权</a>
  14. </nav>
  15. </header>
  16. rw;
  17. echo $sanguo,'<hr>';
  18. // *双引号:可解析变量及转义字符,适合包含插值变量以及特殊字符的动态模板
  19. $username2='关云长';
  20. $sanguo2="千里走单骑,\n\r $username2";
  21. // echo $sanguo2.'<br>';
  22. echo $sanguo2."\n";
  23. // *双引号语法糖:heredoc
  24. $sg=<<<"sanguo"
  25. <ul>
  26. <li>三国演义</li>
  27. <li>$username2</li>
  28. </ul>
  29. sanguo;
  30. echo $sg;

浏览器运行效果:

题目10:数组转成字符串:

php文件:

  1. <?php
  2. // *数组转成字符串
  3. $sanguo=['刘备','关羽','张飞'];
  4. echo implode(',',$sanguo);

浏览器运行效果:

题目11:字符串转成数组

php文件:

  1. <?php
  2. // *字符串转成数组
  3. $link='mysql:dbname=sanguo;root;root';
  4. $db=explode(';',$link);
  5. print_r($db);

浏览器运行效果:

题目12:解析数据库的连接参数

php文件:

  1. <?php
  2. // *解析数据库的连接参数
  3. $link='mysql:dbname=sanguo;root;root';
  4. $db=explode(';',$link);
  5. vprintf('dsn=%s<br>username=%s<br>password=%s<br>',$db);

浏览器运行效果:

题目13:php中对字符串的操作

php文件:

  1. <?php
  2. // *php中对字符串的操作
  3. // *字符串的查询
  4. $str='sanguo.cn';
  5. echo substr($str,0,4).'<br>';
  6. echo substr($str,6,3).'<br>';
  7. echo substr($str,6).'<br>';
  8. // *strstr:首次字符出现的位置之后的字符
  9. $img='liubei.png';
  10. echo strstr($img,'.').'<br>';
  11. // *把扩展名中的'.'删除
  12. echo ltrim(strstr($img,'.'),'.').'<br>';
  13. // *获取'.'之前的文件名
  14. echo strstr($img,'.',true).'<br>';
  15. $str2='phpEnv.cn';
  16. // *strpos:首次出现的索引
  17. echo strpos($str2,'p').'<br>';
  18. echo strpos($str2,'p',1).'<br>';
  19. // *str_replace:字符串的替换
  20. $demo1='E:\project\phpLearn\1c';
  21. echo str_replace('\\','/',$demo1).'/demo1.html';

浏览器运行效果:

题目14:php中对字符串的操作2

php文件:

  1. <?php
  2. // *php中对字符串的操作2
  3. // *批量替换
  4. $user=['张三','李四','王五'];
  5. $suihu=['宋江','吴用','林冲'];
  6. $str='及时雨张三,智多星李四,豹子头王五';
  7. echo str_replace($user,$suihu,$str).'<br>';
  8. // *用**代替敏感词
  9. $a='**';
  10. echo str_replace($user,$a,$str).'<br>';
  11. // *未去空格与去掉空格的字符串
  12. $str2=' 三国 ';
  13. echo strlen($str2).'<br>';
  14. echo strlen(trim($str2)).'<br>';
  15. // *rtrim:去掉右边:
  16. $str3='sanguo.cn';
  17. echo rtrim($str3,'.cn').'<br>';
  18. // *ltrim:去掉左边:
  19. echo ltrim($str3,'sanguo').'<br>';
  20. // *当前服务器中的查询字符串
  21. $url="http://phplearn.io/3c/demo14.php?a=1&b=12&c=123";
  22. echo $_SERVER['QUERY_STRING'].'<br>';
  23. // *把查询字符串转成数组
  24. parse_str($_SERVER['QUERY_STRING'],$arr);
  25. printf('<pre>%s</pre>',print_r($arr,true));
  26. // *把统一资源定位器(网址)解析成数组
  27. $arr=parse_url($url);
  28. printf('<pre>%s</pre>',print_r($arr,true));

浏览器运行效果:

批改老师:PHPzPHPz

批改状态:合格

老师批语:很好,条理清晰,效果完整
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
1条评论
P粉479712293 2022-10-24 15:39:13
谢谢老师表扬
1楼
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学