zoukankan      html  css  js  c++  java
  • PHP中常见的面试题5(附答案)

    1. 下面哪个表达式不能将两个字符串$s1和$s2串联成一个单独的字符串?

    A.$s1+$s2       

    B.“{$s1}{$s2}”       

    C.$s1.$s2

    D. implode(‘’,array($s1,$s2))   

    2.下面的脚本运行以后,$array数组所包含的值是什么?

    $array  = array(‘1’,’1’);
    
    foreach($array as $k=>$v){
    
          $v  =  2;
    
    }

    A. array(‘2’,’2’)

    B. array(‘1’,’1’)     

    C. array(2,2)       

    D. array(Null,Null)

    3. 写出下列代码的输出结果:

    function myfunc($argument){
    
          echo $argument+ 10;
    
    }
    
    $variable = 10;
    
    echo “myfunc($variable)=”.myfunc($variable);

    20myfunc(10)=

     

    4. 请用尽可能少的语句实现对输出Email地址进行验证的功能

     

    //用正则表达式匹配
    
    If(preg_match(‘/w+@w+.w+/’,$str)){
    
          Echo “是邮箱”;
    
    }else{
    
          Echo “不是邮箱”;
    
    }

    5. 根据你的经验谈谈写php程序需要注意哪些问题

    1)代码一定要书写规范,必须加注释

    2)能用系统函数则用系统函数,尽量不要自定义函数,否则效率会偏低

    3)能用字符串函数解决就不要用正则表达式,效率较低

    4)不要相信用户的输入.做好参数检测

    5)尽量使用预处理,防止sql注入.

    6)静态成员方法的速度要比普通成员方法快.

    7)$row[’id’] 的速度是$row[id]的7倍

    8)echo 比 print 快

    9)注销那些不用的变量尤其是大数组

    10)include文件时尽量使用绝对路径

    11)用@屏蔽错误消息的做法非常低效,极其低效。

    12)foreach效率更高,尽量用foreach代替while和for循环;

    13)用单引号替代双引号引用字符串;

     

    6. php是否有安全问题,如果有,请列举说明。

    1. 文件上传

    2. sql注入

    3. xss

     

    7. cron后台常驻程序(daemon)用于:

    A.负责文件在网络中的共享

    B.管理打印子系统Manages theprinting subsystem

    C.跟踪管理系统信息和错误

    D. 管理系统日常任务的调度(scheduing)

     

    8.怎么了解您在当前目录下还有多大空间?  D

    A.Use df

    B. Use du /

    C. Use du

    D.   Use df

     

    9. 有一个备份程序mybackup,需要在周一至周五下午一点和晚上八点各运行次,下面哪一条crontab的项可以完成这项工作?

    A.0 13,20 * * 1,5 mybackup

    B.0 13,20 * * 1,2,3,4,5, mybackup

    C.* 13,20 * *1,2,3,4,5, mybackup

    D.0 13,20 1,5 * *mybackup

    10. 使用命令可以查看Linux的启动信息?

    A.mesg –d

    B.dmesg

    C.cat /etc/mesg

    D.cat /var/mesg

    11. 在vi中退出不保存的命令?

    A.:qt

    B.:r

    C.:wq

    D.:q!

     

    12.如何判断SQL语句的运行效率?如何优化一个查询SQL?

    查看它的运行时间,如果时间过长则说明sql语句的执行效率很低

    Set profiling = 1;

    .....

    Show profiles;

       

    优化:

    A) 尽量使用简单查询, 不要使用联表和子查询

    B) 不要使用*, 指定字段.

    C) 模糊查询的时候 % 不能开头

    D) 给条件字段添加索引

    E) 分组时添加group by id order by null

     

    13 .试写出mysql数据库优化的一些方法

    缓存(读缓存, 写缓存)

    优化SQL语句

    建立索引

    分库分表

    主从复制,读写分离

     

    14. 简述smarty的工作原理,如何对smarty进行二次开发?

    原理:

    1、 smarty将php源文件,首先编译成中间文件

    2、 如果启用缓存,再根据编译文件生成缓存文件

    3、 之后每次访问都会访问编译文件

     

    二次开发

    创建一些方便的标签, 方便在模板中使用, 比如 {article}{/article}

    15. ajax技术利用了什么协议?简述ajax的工作机制。

    HTTP协议。

    在页面不刷新的情况下进行以下操作:

    (1)对象初始化

    (2)发送请求

    (3)服务器接收请求并进行处理

    (4)服务器返回响应数据

    (5)客户端接收

    (6)处理服务器返回的数据

    16. 一个人卖苹果,6元/斤的进货价,10元/斤卖出。某一天他卖了1斤苹果,收到了50元假钞,但没有发现,给客户找了40元钱零钱。请问,这人这次卖苹果亏了多少钱?

    46元  6元的进价和40元零钱  全部46元

    17. 2.   一个小猴子边上有100根香蕉,它要走过50米才能到家,每次他最多搬50根香蕉,每走1米就要吃掉一根,请问它最多能把多少根香蕉搬到家里。

    16根. 问题简化成走最短的路,背更多的水果.但路和水果之间有限制! 题目已经限制,猴子最多背50,我们计算其消耗仅剩下50根的米处,

    假设猴子第一次背了50根,走了X米,在回来搬第2个50根,就有:

    100-3X .........剩下的香蕉数(先走X,往反2X)

    50-X ............剩下的米处

    问题就明白了: (100-3X)-(50-X)=50-2X ........回到家时的香蕉数

    问题就简化为在条件: (100-3X)<=50的情况下,求 (50-2X)的最大值! 得到: X=17时, 50-2X 最大值 16 方案: 猴子先搬50根,走17米,在回来搬50根走到17米处,回来后再搬剩下的49根走完33米,最后得到16根!

     

    18. 分金条问题

     你让某些人为你工作了七天,你要用一根金条作为报酬。这根金条要被分成七块。你必须在每天的活干完后交给他们一块。如果你只能将这根金条切割两次,你怎样给这些工人分?

    切割两次,分出三块 1、2、 4。
    第一天  付1
    第二天  收回1,付2
    第三天  付1(1+2)
    第四天  收回1、2  付4
    第五天  付1 (4+1)
    第六天  收回1 付2(4+2)
    第七天 付1 (4+2+1)

     

    19. 有十箱苹果,里面各放苹果10个,其中9箱装的苹果是50克/只,另一箱装的苹果是60克/只,现给你一地秤,要求只称一次就能准确找到装60克/只的那箱苹果,请问如何做?

    先给十个箱子标上序号,然后从一号箱子拿出苹果一只,二号拿两只,以此类推....十号箱子拿十只。然后称下总重量,减去500克*倍数,余数是十的多少倍就是几号箱子中的。这样就只称了一次。

    20. 不均匀分布的香,每根香烧完的时间是一小时,你能用什么方法来确定一段15分钟的时间?

    一支两端同时点燃烧完一支是30分,另一支只点一端烧了一半,剩下的支持30分钟,在同时点燃两端,得15分

    性格测试

    1.简单说一下,你是一个什么性格的人?

          主要说下团结团队,活泼开朗,和人交往没有障碍

      每次说完最好举个小例子

    2.你认为你自身最大的优点和缺点是什么?

      优点  按照实际的说 比如团结集体 活泼开朗 等

      缺点  把不是缺点的缺点说出来就行

    3.是否愿意在比较大的工作压力下工作?有创业公司的工作经验么?简单说一下你对创业公司的看法。

      可以 压力越大动力越大

      经验 按实际去回答

      看法:必须有明确的目标,坚持下去的精神,良好的管理团队,和团结的集体

    4.你具体是使用什么方法来提供自身的技术(或业务)水平的?

      逛逛技术论坛

      看视频教程...

      聚会

    5.说说你对本公司的了解。简单说说你理想中下面找的工作是一个什么样的工作?简单说一下离开上一个工作的原因是什么?

      面试以前必须看看这个公司的简介 回答出这个公司的业务和特色

      简单谈谈你应聘职业的工作内容,表达出对这份工地的兴趣和爱好

      原因不要抱怨上个公司或者领导不好,回答自身原因多一点

  • 相关阅读:
    spring中Bean的生命周期
    java之多线程
    struts2配置详解
    值栈
    数据校验和国际化
    2016年9月23日试题整理
    SpringMVC 文件上传下载
    CSS3 新增属性
    SpringMVC数据校验
    java中进程与线程--三种实现方式
  • 原文地址:https://www.cnblogs.com/AngryBigCat/p/7277648.html
Copyright © 2011-2022 走看看