2017年PHP面试编程题
- php语言
- 关注:2.99W次
PHP是属于后端的工程师,因此被问到编程问题是避免不了的,以下是本站小编精心为大家整理的2017年PHP面试编程题,希望对大家有所帮助!更多内容请关注应届毕业生网!
1. 写一个函数,尽可能高效的,从一个标准 url 里取出文件的扩展名
例如: 需要取出 php 或
$url = "
arr=parseurl(arr=parseurl(url);
pathArr=pathinfo(pathArr=pathinfo(arr['path']);
print_r($pathArr['extension']);
3. 写一个函数,算出两个文件的相对路径
如 $a = '/a/b/c/d/';
$b = '/a/b/12/34/';
计算出 b相对于b相对于a 的.相对路径应该是 将添上
$a = '/a/b/c/d/';
$b = '/a/b/12/34/';
//获取path相对于conpath的相对路径
function sGetRelativePath(path,path,conpath)
{
pathArr=explode("/",pathArr=explode("/",path);
conpathArr=explode("/",conpathArr=explode("/",conpath);
$dismatchlen = 0;
for(i=0;i=0;i < count(pathArr);pathArr);i++)
{
if(conpathArr[conpathArr[i] != pathArr[pathArr[i])
{
dismatchlen=count(dismatchlen=count(pathArr) - $i;
arrLeft=arrayslice(arrLeft=arrayslice(pathArr, $i);
break;
}
}
ret=strrepeat("../",ret=strrepeat("../",dismatchlen)ode("/", $arrLeft);
return $ret;
}
print_r(sGetRelativePath(b,b,a));
3.写一个函数,能够遍历一个文件夹下的所有文件和子文件夹。
function aGetAllFile($folder)
{
$aFileArr = array();
if(is_dir($folder))
{
handle=opendir(handle=opendir(folder);
while((file=readdir(file=readdir(handle)) !== false)
{
//如果是.或者..则跳过
if(file=="."||file=="."||file == "..")
{
continue;
}
if(is_file(folder."/"er."/"))
{
aFileArr[]=aFileArr[]=file;
}
else if(is_dir(folder."/"er."/"))
{
aFileArr[aFileArr[file] = aGetAllFile(folder."/"er."/");
}
}
closedir($handle);
}
return $aFileArr;
}
$path = "/home/test/sql";
print_r(aGetAllFile($path));
- 文章版权属于文章作者所有,转载请注明 https://xuezhezhai.com/jsj/php/go9nmd.html