php面试

 
一、  程序开发部分
1、  输出“Hello World”到文件 hello.txt中,要求代码完整

2、 输出用户的IP地址,并且判断用户的IP地址是否在192.168.1.100 --- 192.168.1.150之间

3、 请指出下列代码的错误并修改
<?php
function LoadFile()
{
        $fd = @fopen("websys.conf",'r');
        if (!$fd)
                return false;
        while(!feof($fd))
        {
                $buf .= trim(fgets($fd));
        }
        fclose($fd);
        return $buf;
}

$str = LoadFile();
if ($str == false)
{
        echo "载入文件失败\n";
}
else
{
        continue;
}
?>

4、 完成class MyDoc,实现文件的读、写、删、拷贝、移动功能







5、 请将2维数组按照name的长度进行重新排序,按照顺序将id赋值(从1开始)。完成下面程序
<?php
$Tarray = array(
  array(‘id’ => 0, ‘name’ => ‘123’),
  array(‘id’ => 0, ‘name’ => ‘1234’),
  array(‘id’ => 0, ‘name’ => ‘1235’),
  array(‘id’ => 0, ‘name’ => ‘12356’),
  array(‘id’ => 0, ‘name’ => ‘123abc’)
)
/***完成排序部分***/

?>

6、 接受表单数据text1,text2,text3[],text3[],text3[]进行输出,并判断text2是否是标准email地址

7、 写出请求URL http://blog.sina.com.cn,并获得返回内容

二、UNIX系统操作部分
8、 查找/home/user 目录下,所有文本中含有sina的文件

9、 如何解压一个文件名以tar.gz结尾的文件

三、数据库部分
10、 选择合适数据类型写出建立如下学生信息表的SQL语句

表名(Student)
字段名称  描述  要求
ID  学生证号  主键
Name  姓名  不能为空
Birth  生日  不能为空
Gender  性别  默认为男
Desc  备注信息  


写出统计1980-1-1后出生的女生数量的SQL语句

11、 该题为选答 简述PRIMARY KEY,UNIQUE KEY,FOREIGN KEY和普通索引的差别,以及建立索引对数据库性能的可能影响

四、 综合题
12、 从系统平台、结构、规模方面简单描述一下自己曾经参与开发过的WEB项目

13、谈谈对于一个使用了数据库的大数据量、大访问量的WEB项目,譬如论坛系统,从系统结构、技术细节等各个方面都可以采用什么方案和手段来保证系统的性能
新浪
2008/05/27 11:18
一.  简答题

1.  请说明php中传值与传引用的区别。什么时候传值什么时候传引用?



2.  在PHP中error_reporting这个函数有什么作用?



3.  请写一个函数验证电子邮件的格式是否正确




4.  简述如何得到当前执行脚本路径,包括所得到参数。
说明:例如有一个脚本 www.domain.com,传给他的参数有参数1,参数2,参数3….
传递参数的方法有可能是GET有可能是POST,那么现在请写出类似
http://www.domain.com/script.php? 参数1=值1&参数2=值2..... 的结果





5.  如何修改SESSION的生存时间.



6. 有一个网页地址 http://www.domain.com/xxx.php,如何得到它的内容?




7. 有一个一维数组,里面存储整形数据,请写一个函数,将他们按从大到小的顺序排列。要求执行效率高。并说明如何改善执行效率。(该函数必须自己实现,不能使用php函数)





8. 请举例说明在你的开发过程中用什么方法来加快页面的加载速度。



二. 数据库设计题:
请设计一套图书馆借书管理系统的数据库表结构;可以记录基本的用户信息、图书信息、借还书信息;数据表的个数不超过6个;请画表格描述表结构(需要说明每个字段的字段名、字段类型、字段含义描述);
在数据库设计中应:
1. 保证每个用户的唯一性;
2. 保证每种图书的唯一性;每种图书对应不等本数的多本图书;保证每本图书的唯一性;
3. 借书信息表中,应同时考虑借书行为与还书行为,考虑借书期限;
4. 保证借书信息表与用户表、图书信息表之间的参照完整性;
5. 限制每个用户最大可借书的本数
6. 若有新用户注册或新书入库,保证自动生成其唯一性标识
7. 为以下的一系列报表需求提供支持:
(无特定说明,不需编写实现语句,而需在数据库设计中,保证这些报表可以用最多一条SQL语句实现)
a) 日统计报表:当日借书本数、当日还书本数报表;
b) 实时报表:
i. 当前每种书的借出本数、可借本数;
ii. 当前系统中所有超期图书、用户的列表及其超期天数
iii. 当前系统中所有用户借书的本数,分用户列出(包括没有借书行为的用户);请编写实现此需求的SQL语句:








数据库应用:
请撰写一系列的SQL语句,分别描述完整的借书行为与还书行为;并保证这一系列的SQL语句的执行完整性
下题是测验能力之最重要测试,如不能完成我们将无法给出评判结果!所以请写出详细的回答,并保证答案是可以执行的程序。在两日内将结果通过电子邮件寄到romthxie@163.com邮箱

结合第二题中你的设计,用一种数据库实现,要求使用三层结构或者多层结构,要求采用面向对象的思想进行编程,有可能的话,设计一套模板机制来实现之。

功能:列出当前借出图书的情况 ,按日期排列

编号 用户姓名 书名 书的编号 借出日期
1. 张进 大染坊 12576587 2004-9-1
2. 刘兴 西游记 32131098 2004-9-2
……
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值