批改状态:合格
老师批语:很好,条理清晰,效果完整
<?php// *php访问函数外部变量的5种方式之一:global关键字$username='关云长';function sanguo():string{global $username;return '过五关斩六将,'.$username;}echo sanguo(),'<br>';

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

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

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

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

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

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

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

<?php// *php中字符串的单引号与双引号// *单引号:不解析变量与转义符,适合不含变量与转义字符的静态文本$username='曹操';$sanguo='三国人物:\n\r $username';echo $sanguo;// *单引号的语法糖:nowdoc$sanguo=<<<'rw'<header><nav><a href="">曹操</a><a href="">刘备</a><a href="">孙权</a></nav></header>rw;echo $sanguo,'<hr>';// *双引号:可解析变量及转义字符,适合包含插值变量以及特殊字符的动态模板$username2='关云长';$sanguo2="千里走单骑,\n\r $username2";// echo $sanguo2.'<br>';echo $sanguo2."\n";// *双引号语法糖:heredoc$sg=<<<"sanguo"<ul><li>三国演义</li><li>$username2</li></ul>sanguo;echo $sg;


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

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


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

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

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

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