比较基础的php面试题及答案-编程题


Posted in 面试题 onOctober 14, 2012
编程题:
1. 写一个函数,尽可能高效的,从一个标准 url 里取出文件的扩展名
例如: http://www.sina.com.cn/abc/de/fg.php?id=1 需要取出 php 或 .php
答案1:
function getExt($url){
$arr = parse_url($url);

$file = basename($arr[path]);
$ext = explode(“.”,$file);
return $ext[1];
}
答案2:
function getExt($url) {
$url = basename($url);
$pos1 = strpos($url,”.”);
$pos2 = strpos($url,”?”);
if(strstr($url,”?”)){
return substr($url,$pos1 + 1,$pos2 – $pos1 – 1);
} else {
return substr($url,$pos1);
}
}

2. 在 HTML 语言中,页面头部的 meta 标记可以用来输出文件的编码格式,以下是一个标准的 meta 语句
请使用 PHP 语言写一个函数,把一个标准 HTML 页面中的类似 meta 标记中的 charset 部分值改为 big5
请注意:
1. 需要处理完整的 html 页面,即不光此 meta 语句
2. 忽略大小写
3. ‘ 和 ” 在此处是可以互换的
4. ‘Content-Type’ 两侧的引号是可以忽略的,但 ‘text/html; charset=gbk’ 两侧的不行
5. 注意处理多余空格

3. 写一个函数,算出两个文件的相对路径
如 $a = ‘/a/b/c/d/e.php’;
$b = ‘/a/b/12/34/c.php’;
计算出 $b 相对于 $a 的相对路径应该是 ../../c/d将()添上
答:function getRelativePath($a, $b) {
$returnPath = array(dirname($b));
$arrA = explode(‘/’, $a);
$arrB = explode(‘/’, $returnPath[0]);
for ($n = 1, $len = count($arrB); $n if ($arrA[$n] != $arrB[$n]) {
break;
}
}
if ($len – $n > 0) {
$returnPath = array_merge($returnPath, array_fill(1, $len – $n, ‘..’));
}

$returnPath = array_merge($returnPath, array_slice($arrA, $n));
return implode(‘/’, $returnPath);
}
echo getRelativePath($a, $b);

Tags in this post...

面试题 相关文章推荐
HashMap和Hashtable的区别
May 18 面试题
JPA面试常见问题
Nov 14 面试题
声明struct x1 { . . . }; 和typedef struct { . . . }x2;有什么不同
Jun 02 面试题
上海奥佳笔试题面试题
Nov 16 面试题
说出你对remoting 和webservice的理解和应用
Jun 08 面试题
linux面试题参考答案(5)
Nov 05 面试题
Linux的主要特性
Oct 06 面试题
软件测试面试题
Jan 05 面试题
如何用Python输出一个Fibonacci数列
Aug 28 面试题
几道Java和数据库的面试题
May 30 面试题
Java基础类库面试题
Sep 04 面试题
JSF的标签库有哪些
Apr 27 面试题
PHP中如何创建和修改数组
May 02 #面试题
PHP面试题集
Dec 18 #面试题
一些PHP的面试题
May 06 #面试题
几道PHP面试题
Apr 14 #面试题
PHP如何防止SQL注入
May 03 #面试题
几道PHP的面试题
May 19 #面试题
PHP解析URL是哪个函数?怎么用?
May 09 #面试题
You might like
php REMOTE_ADDR之获取访客IP的代码
2008/04/22 PHP
基于xcache的配置与使用详解
2013/06/18 PHP
php简单操作mysql数据库的类
2015/04/16 PHP
PHP简单实现生成txt文件到指定目录的方法
2016/04/25 PHP
实例分析PHP将字符串转换成数字的方法
2019/01/27 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
Jquery 点击按钮显示和隐藏层的代码
2011/07/25 Javascript
JavaScript实现网页图片等比例缩放实现代码及调用方式
2013/02/25 Javascript
纯js简单日历实现代码
2013/10/05 Javascript
解析jquery中的ajax缓存问题
2013/12/19 Javascript
jQuery 获取/设置/删除DOM元素的属性以a元素为例
2014/05/23 Javascript
javascript实现下班倒计时效果的方法(可桌面通知)
2015/07/10 Javascript
js组件SlotMachine实现图片切换效果制作抽奖系统
2016/04/17 Javascript
基于jQuery下拉选择框插件支持单选多选功能代码
2016/06/07 Javascript
JavaScript制作弹出层效果
2016/12/02 Javascript
JavaScript实现简单的文本逐字打印效果示例
2018/04/12 Javascript
JavaScript实现滑动门效果
2020/01/18 Javascript
JavaScript中交换值的10种方法总结
2020/08/18 Javascript
JavaScript实现简单验证码
2020/08/24 Javascript
Python实现截屏的函数
2015/07/25 Python
python使用turtle库与random库绘制雪花
2018/06/22 Python
Python实现字符型图片验证码识别完整过程详解
2019/05/10 Python
Django实现网页分页功能
2019/10/31 Python
python 数据库查询返回list或tuple实例
2020/05/15 Python
多视角3D逼真HTML5水波动画
2016/03/03 HTML / CSS
社区学雷锋活动策划方案
2014/01/30 职场文书
计算机大学生职业生涯规划书范文
2014/02/19 职场文书
《北大荒的秋天》教学反思
2014/04/14 职场文书
道德之星事迹材料
2014/05/03 职场文书
建材投资建议书
2014/05/16 职场文书
火灾现场处置方案
2014/05/28 职场文书
国际会计专业求职信
2014/08/04 职场文书
中秋节慰问信
2015/02/15 职场文书
团队拓展训练感想
2015/08/07 职场文书
自荐信范文
2019/05/20 职场文书
winserver2019安装软件一直卡在应用程序正在为首次使用做准备
2022/06/10 Servers