PHP的面试题集(h058整理)
面试题1
1、用PHP打印出前一天的时间格式是2006-5-10 22:21:21
print date('Y-m-d', time()-86400);
2、echo(),print(),print_r()的区别
echo语言结构, print/print_r是函数. print是一般性输出, print_r输出包含底层类型.
3、能够使HTML和PHP分离开使用的模板
?听不懂. smarty?
4、如何实现PHP、JSP交互?
...没用过jsp
5、使用哪些工具进行版本控制?
cvs, subversion
6、如何实现字符串翻转?
print strrev('abc');
7、优化MYSQL数据库的方法。
针对经常用到的关键列多做索引, explain
8、谈谈事务处理
事务处理是指连续性的动作不可被打断的过程, 事务处理失败会撤销相应的影响
9、apache+mysql+php实现最大负载的方法
...软件角度的提升, 不如硬件角度的提升来得快
10、实现中文字串截取无乱码的方法。
中文是gb2312还是utf8?gb2312和utf8特点判断下就可以了. 面试题2
var $empty = '';
var $null = NULL;
var $bool = FALSE;
var $notSet;
var $array = array();
1.
$a = "hello";
$b = &$a;
unset($b);
$b = "world";
what is $a?
'hello'
2.
$a = 1;
$x = &$a;
$b = $a++;
what is $b?
1
3.
$x = empty($array);
what is $x? true or false
true
4.您是否用过版本控制软件? 如果有您用的版本控制软件的名字是? 是.cvs, subversion.
5.您是否用过模板引擎? 如果有您用的模板引擎的名字是?
是.smarty
6.请简单阐述您最得意的开发之作.
还没.一个人不够.想找合作者.
7.对于大流量的网站,您采用什么样的方法来解决访问量问题?
针对动态性不强的ye, 可以生成静态的; 交互性强的, 没多少办法, 我仍然相信性能角度投资软件不如投资硬件.
8.用PHP写出显示客户端IP与服务器IP的代码:
print $_SERVER['remote_addr'].$_SERVER['server_addr'];
面试题3
一、PHP/MySQL编程
1) 某内容管理系统中,表message有如下字段
id 文章id
title 文章标题
content 文章内容
category_id 文章分类id
hits 点击量
创建上表,写出MySQL语句
DROP TABLE IF EXISTS message;
CREATE TABLE IF NOT EXISTS message
(
id INT NOT NULL AUTO_INCREMENT,
title VARCHAR(200) NOT NULL DEFAULT '',
content TEXT,
category_id INT, #这里估计还要改, 暂时放下
hits INT,
PRIMARY KEY(id)
);
CREATE INDEX message_title_index ON message(title);
2)同样上述内容管理系统:表comment记录用户回复内容,字段如下
comment_id 回复id
id 文章id,关联message表中的id
comment_content 回复内容
现通过查询数据库需要得到以下格式的文章标题列表,并按照回复数量排序,回复最高的排在最前面
文章id 文章标题点击量回复数量
用一个SQL语句完成上述查询,如果文章没有回复则回复数量显示为0
SELECT m.id, m.title, m.hits, count(comment_id) as total FROM message m LEFT JOIN comment ON (m.id=comment.id) GROUP BY(m.id) ORDER BY total DESC;
3) 上述内容管理系统,表category保存分类信息,字段如下category_id int(4) not null auto_increment;
categroy_name varchar(40) not null;
用户输入文章时,通过选择下拉菜单选定文章分类
写出如何实现这个下拉菜单
办法很多, 纯javascript(php取出所有分类),