PHP面试题之文件目录操作
获取文件后缀,遍历目录层次
/**
* 5种方式获取文件后缀名
* 这道题其实就是考函数substr() strrchr() array_pop() strrpos() strpos() strrev() explode() pathinfo()
* @param string $filename 要处理的文件名 1.jpg/1.png/1.html/1.php
* @return string .php/php
*/
function get_ext1($filename)
{
return strrchr($filename,'.');
} function get_ext2($filename){
return substr($filename,strrpos($filename,'.'));
} function get_ext3($filename){
return array_pop(explode('.',$filename));
} function get_ext4($filename){
return pathinfo($filename,PATHINFO_EXTENSION);
} function get_ext5($filename){
return strrev(substr(strrev($filename),0,strpos(strrev($filename),'.')));
} $filename = "1.php";
echo get_ext1($filename)."\n";
echo get_ext2($filename)."\n";
echo get_ext3($filename)."\n";
echo get_ext4($filename)."\n";
echo get_ext5($filename)."\n";
/**
* 遍历目录(递归)
* @param string $dir 目录名且最后没有/
* @return array $files 整个目录结构
*/
function myScandir($dir)
{
$files = array();
if($handle = opendir($dir)){
while (($file = readdir($handle)) != false){
if($file != "." && $file != ".."){
$newDir = $dir."/".$file;
if(is_dir($newDir)){
$files[$file] = myScandir($newDir);
}else{
$files[] = $file;
}
}
}
closedir($handle);
return $files;
}
} $dir = "/dirname";
print_r(myScandir($dir));
PHP面试题之文件目录操作的更多相关文章
- paip.文件目录操作uAPI php python java对照
paip.文件目录操作uAPI php python java对照 chdir -- 改变目录 chroot -- 改变根目录 dir -- directory 类 closedir -- 关闭目录句 ...
- php文件夹与文件目录操作函数
在php中一些常用的文件夹/文件目录操作函数总结. php文件夹操作函数 string basename ( string path [, string suffix] ) 给出一个包含有指向一个文件 ...
- 你一定要知道的关于Linux文件目录操作的12个常用命令
写在前面: 1,<你一定要知道的关于Linux文件目录操作的12个常用命令>是楼主收集的关于Linux文件目录操作最常用的命令,包括文件或目录的新建.拷贝.移动.删除.查看等,是开发人员操 ...
- SQLServer 常见SQL笔试题之语句操作题详解
SqlServer 常见SQL笔试题之语句操作题详解 by:授客 QQ:1033553122 测试数据库 CREATE DATABASE handWriting ON PRIMARY ( name = ...
- [PY3]——IO——文件目录操作
IO—os.shutil—文件目录操作 目录操作 1. 新建 os.mkdir(path[, mode]) 相当于mkdir,新建目录 os.makedirs(path[, mode]) 相当于mkd ...
- python OS 模块 文件目录操作
Python OS 模块 文件目录操作 os模块中包含了一系列文件操作的函数,这里介绍的是一些在Linux平台上应用的文件操作函数.由于Linux是C写的,低层的libc库和系统调用的接口都是C AP ...
- php 文件夹 与 文件目录操作
php文件夹操作函数 string basename ( string path [, string suffix] )给出一个包含有指向一个文件的全路径的字符串,本函数返回基本的文件名.如果文件名是 ...
- Vim 中进行文件目录操作
Vim 中进行文件目录操作 当前文件名 我们知道Vim有48个寄存器,其中%只读寄存器中保存着当前文件路径. 例如在/home/harttle/下打开src/main.cpp,我们打印%的值: :ec ...
- python2.7.13标准库文件目录操作与文件操作
标准库的中文参考文档: http://python.usyiyi.cn/translate/python_278/library/index.html 官方标准库文档:https://docs.pyt ...
随机推荐
- 加密html
2009年4月4日 周六 22:18 <HTML> <HEAD> <meta http-equiv="Content-Type" content=&q ...
- [转]标准C++字符串string以及MFC6.0字符串CString的tokenize和split函数
标准字符串的方法: /******************************************** the tokenize function for std::string ****** ...
- JavaScript实现div宽、高自动缓慢拉伸
最近打算实现一个带有滤镜效果的地自动拉伸图片.发现使用css3浏览器兼容性得需要特别关注.这里我使用js实现了一个div边框自动拉伸和缩小.源码如下: <!DOCTYPE html>< ...
- CAS实现单点登录流程
CAS实现单点登录 环境 客户端: www.app1.com CAS服务器: www.cas-server.com 1.浏览器:发起请求 www.app1.com 2. 客户端:Authenticat ...
- 菜单之二:使用xml文件定义菜单
参考<疯狂android讲义>2.10节 P174,参见归档project:XmlMenuDemo.zip 一般推荐使用XML文件定义菜单. 基本步骤如下: 1.定义布局文件 为简单显示原 ...
- ubtuntu 下 使用svn命令
SVN作为日常开发中不可缺少的工具,今天终于开始在Ubuntu下使用了. 1.首先需要安装SVN.Ubuntu下的SVN安装十分简单,sudo apt-get install subversion,然 ...
- python运维开发(十)----IO多路复用线程基本使用
内容目录: python作用域 python2.7和python3.5的多继承区别 IO多路复用 socketserver模块源分析 多线程.进程.协程 python作用域 python中无块级作用 ...
- 记录一下自己用到的python logging
最近想把自己零零散散写的代码嵌成一个应用,要考虑到各方面的debug,把logging看了一下,把用到的记下来. 将日志打印到屏幕 import logging logging.debug(u'调试' ...
- Repeated meta-data items
B.2 Generating your own meta-data using the annotation processor You can easily generate your own co ...
- Chapter 1. Hello, Perl/Tk
Chapter 1. Hello, Perl/Tk 内容: Perl/Tk Concepts Some Perl/Tk History Getting Started with Perl/Tk Hel ...