unset

unset

想把unset付给一个新的变量不行吗?

<?php

$filename1='PHP.primary.test.php';

$filename2='JAVA.senior.task.learn.java';

$filename3='exercise.docx';

//定义一个能够输出文件名和文件后缀的函数,参数即为题目给定的文件变量

function file_explode($filename){

//将$filename以‘.’为标记分割放入数组$file并打印

$a=explode('.',$filename);


//循环数组$file,输出不带后缀的文件名

unset($a[count($a)-1]);


    foreach($a as $b){

       $c.= '.'.$b;

       }

    echo '文件名称是:'. substr($c,1);

//输出文件后缀

    echo '<br>';

    echo end($a);

}


//调用以上定义的函数,分别完成$filename1、$filename2和$filename3的文件名和后缀输出


echo file_explode($filename1);


?>


正在回答

登陆购买课程后可参与讨论,去登陆

1回答

同学你好,不可以为unset()函数进行赋值。则同学可以根据$a的长度进行循环,然后进行拼接最后输出文件名与文件后缀。修改后代码如下所示:

http://img1.sycdn.imooc.com//climg/5e9baf61091a529011140820.jpg

<?php
    // 想把unset付给一个新的变量不行吗?
    $filename1='PHP.primary.test.php';
    $filename2='JAVA.senior.task.learn.java';
    $filename3='exercise.docx';
    //定义一个能够输出文件名和文件后缀的函数,参数即为题目给定的文件变量
    function file_explode($filename){
        //将$filename以‘.’为标记分割放入数组$file并打印
        $a=explode('.',$filename);
        echo "<pre/>";
        var_dump($a);
        //循环数组$file,输出不带后缀的文件名
        $c=null;
        while(key($a)<(count($a)-1)){
            $c .= current($a).'.';
            next($a);
        }
        echo '文件名称是:'. substr($c,0,-1);
        //输出文件后缀
        echo '<br>';
        echo '文件后缀是:'.end($a);
    }   

    //调用以上定义的函数,分别完成$filename1、$filename2和$filename3的文件名和后缀输出
    echo file_explode($filename1);
    echo file_explode($filename2);
    echo file_explode($filename3);
?>

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
PHP小白零基础入门
  • 参与学习           人
  • 提交作业       626    份
  • 解答问题       4928    个

想要学好Web后端开发的中流砥柱语言,本阶段为你轻松铺就扎实的基础,从前端网页布局的搭建到后台PHP开发,助你从零基础到掌握主流开发语言。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师