PHP经典面试题(二)

1.问题:PHP中获取图像尺寸大小的方法是什么?

回答:getimagesize () 获取图片的尺寸

Imagesx () 获取图片的宽度

Imagesy () 获取图片的高度


2.sessioncookie的区别?
答:cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。
session_id是储存在客户端cookie

 

3.数据库中的事务是什么?
答:事务就是一系列的操作,这些操作完成一项任务。只要这些操作里有一个操作没有成功,事务就操作失败,发生回滚事件。即撤消前面的操作,这样可以保证数据的一致性。而且可以把操作暂时放在缓存里,等所有操作都成功有提交数据库,这样保证
所有的操作都是有效操作。MYSQL中只有INNODBBDB类型的数据表才能支持事务处理!其他的类型是不支持的!begin 开始一个事务

php根据不同条件发送rollback 事务回滚
或者发送commit 事务确认

 

4. echo count("abc"); 输出什么?
答:"1"
count —计算数组中的单元数目或对象中的属性个数

 

5. PHP写出显示客户端IP与服务器IP的代码
答:$_SERVER['SERVER_ADDR']服务器  
$_SERVER['REMOTE_ADDR']客户端

 

6. error_reporting(2047)什么作用?
答:PHP 显示所有错误 E_ALL

 

7. echoprint()print_r()有什么区别?
答:echo是一个语言结构,没有返回值。
echo 可以输出多个字符串,多个字符串可以用,隔开
   print是一个函数,返回int类型的值。[只能打印int string]
print只能输出一个字符串
   print_r()是一个函数,返回bool类型值,按结构输出变量的值。打印关于变量的易于理解的信息[数组、对象等]

 

8. 打开php.ini中的Safe_mode,会影响哪些函数?至少说出6个。
答:1:用户输入输出函数(fopen() file()require(),只能用于调用这些函数有相同脚本的拥有者)
   2:创建新文件(限制用户只在该用户拥有目录下创建文件)
   3:用户调用popen() syste
m()exec()等脚本,只有脚本处在safe_mode_exec_dir配置指令指定的目  录中才可能
   4:加强HTTP认证,认证脚本拥有者的UID的划入认证领域范围内,此外启用安全模式下,不会设置PHP_AUTH
  
 5:mysql服务器所用的用户名必须与调用mysql_connect()的文件的拥有者用户名相同
   
 6:受影响的函数变量以及配置命令达到40

 

9. MySQL数据库,怎么优化?
答:

如果查询比较频繁的字段需要建立合理的索引。少用in函数,少用<>不等比较,少用mysql内置统计函数,少用like模糊查询,少用mysql复杂的关联查询。mysql主从同步。master:主要,老师。slave:次要的。利用mysql主从同步原理实现写入操作与查询操作分离。利用nosql内存数据库做mysql数据库的缓存。

 

10. includerequire的区别是什么?
答:当引用一个外部文件时,如果这个文件打开出错,require将直接中止程序并抛出一个Fatal Error,include只会抛出一个warning,并继续执行include下面的语句.为了避免重复引用我们可以用:
require_once(),include_once();


回到

顶部