zoukankan      html  css  js  c++  java
  • PHP面试(A02)

    一、选择题

    1.下面哪个表达式不能将两个字符串$s1和$s2串联成一个单独的字符串?( A )
    A.$s1+$s2 B.“{$s1}{$s2}” C.$s1.$s2
    D. implode(‘’,array($s1,$s2)) E.以上所有的方法都能实现

    二、问答题

    1.写出下列代码的输出结果:
    function myfunc($argument){
    echo $argument+ 10;
    }
    $variable = 10;
    echo “myfunc($variable)=”.myfunc($variable);

    先调用函数输出,后输出字符串
    输出为: 20myfunc(10)=
    

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

    ‘/[0-9a-zA-Z_]+@[0-9a-zA-Z_]\.com|\.net|\.cn/ism’
    

    3.简述cookie和session的区别各自的工作机制,存储位置等,简述cookie的优缺点。

    Session是在服务器端运作,根据用户浏览器开始到结束而开始到结束,依赖于cookie,若关闭cookie,session有可能异常,存储在服务器上的php指定的目录中的(session_dir)的位置进行的存放 
    
    Cookie是在客户端运作,可以指定时间限制跟踪用户信息,当用户关闭cookie设置,cookie也将失效,存储在用户WIN的Temp目录中的
    
    Cookie优点:存储于客户端,减缓对服务器端的压力
    	   缺点:可以手动修改,安全性不高
    

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

    注意分号和命名的大小写
    注意系统函数的参数位置的传参
    注意错误等级设置和路径问题
    

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

    1.过滤用户输入的值 比如从post和get传参得来的值
    例:`$`_POST[‘user’];不过滤,会造成一连串的麻烦
    
    2.禁用register_globals 如果不禁止,就无法确定该变量是否是预定义全局变量里的值
    	例:regiseter_globals=on
    		 `$`var 会代替掉 `$`_POST[‘var’]
    
    3.防止sql注入
    使用 mysql_real_escape_string() 作为用户输入的包装器,就可以避免用户输入中的任何恶意 SQL 注入
    例: `$`sql = "select count(*) as ctr from users where username='".mysql_real_ 
    _string(`$`username)."' and password='". mysql_real_escape_string(`$`pw)."' 
    limit 1"; 	
    

    6.是否仔细阅读过php手册?请列举基本你阅读过的技术方面的书,并简要说明读后感。

    Php 5手册
    细说PHP2 很适合新人入门学习,里面的代码精简独到
    

    三、Linux选择题:

    1.coron后台常驻程序(daemon)用于:D

    A.负责文件在网络中的共享
    B.管理打印子系统Manages theprinting subsystem
    C.跟踪管理系统信息和错误
    D.管理系统日常任务的调度(scheduing)
    

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

    A.Use df
    B.Use du /
    C.Use du.
    D.Use df.
    

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

    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
    

    4. 下面哪条命令可以把f1.txt复制为f2.txt?A

    A.cp f1.txt|f2.txt
    B.cat f1.txt|f2.txt
    C.cat f1.txt|f2.txt
    B.copy f1.txt|f2.txt
    

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

    A.mesg –d
    B.dmesg
    C.cat /etc/mesg
    D.cat /var/mesg
    

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

    A.:qt
    B.:r
    C.:wq
    D.:q!
    

    四、其他相关技术

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

    使用explain查看sql语句
    	最主要的查看type和Extra的值
    	
    1.避免全表扫描
    2. 避免在where子句中使用!=或<>操作符, 还有null值的判断全表扫描
    3.  避免在where子句中使用or in not in 
    4.  避免在where子句中对字段使用函数操作 
    5.   不要写一些没有意义的查询
     6.  索引尽量不要过多
    

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

    查询语句优化
    	建立索引
    	使用外键
    	减少模糊匹配和自匹配
    	数据表类型根据需求不同而设定不同
    	优化事务处理
    	字段最好都设置not null ,比如字段类型设置成enum等
    

    3.apache默认使用进程管理还是线程管理?如何判断并设置最大连接数?
    进程管理

    通过查看连接数和当前连接数判断
     
    netstat -ant | grep `$`ip:80 | wc -l 
    netstat -ant | grep `$`ip:80 | grep EST | wc -l 
    
    
    修改httpd.conf文件 
    
    <IfModule prefork.c> 
    StartServers      8 
    MinSpareServers    5 
    MaxSpareServers  20  
    MaxClients      150 
    MaxRequestsPerChild  1000 
    </IfModule> 
    

    4.简述smarty的工作原理?

    Smarty工作原理:当tpl模版文件第一次被hbcms调用后,将被自动编译,并生成php文件,储存在compile目录里;当再次调用tpl文件时,smarty系统会判断tpl文件是否被修改过,如果没被修改过则直接调用,反之 重新编译 调用
    

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

    通过 XMLHttpRequest对象 发送数据到服务器 经过服务器的处理后 再接收服务器返回来的数据
    

    6.利用ajax开发时,需要考虑浏览器的兼容性么?如果需要,常需要考虑哪些?ajax开发常会遇到哪些问题,试举例说明?

    需要

    如 对XMLHttpRequestde对象的解析
    对象的创建问题。
    js脚本缓存问题	
    调试代码排错困难
    

    7.利用ajax传输数据时,一般默认使用的是什么编码方式?如果出现乱码如何处理?
    Utf8

    设置文件的编码为utf8
    在文件的头部增加设置字符集编码为utf8
    在ajax小类库写入 xmlhttp.setRequestHeader( "Content-Type", "text/html;charset=UTF-8" );
    

    四、逻辑思维

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

    40+6=46元

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

    猜想:0根

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

      联想:二进制:1,2,4 其中若干个的和可构成1,7中任何一个数
      1/7,2/7,4/7 第一天给1/7 第二天拿2/7换1/7 如此反复

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

    先给十项苹果编上号 1.2.3 ...... 10
    然后1号箱子拿出一个苹果 2号箱子拿出两个苹果 3号箱子拿出三个苹果 以此类推
    把拿出的苹果混在一起称重 如果十箱苹果每箱苹果都是50克一只的话
    称出的重量应该为2750克 用称出的重量-2750 然后再除以十 等于几 就是第几箱的苹果是60克/只
    
    1. 村子中有50个人,每人有一条狗。在这50条狗中有病狗(这种病不会传染)。于是人们就要找出病狗。
      每个人可以观察其他的49条狗,以判断他们是否生病(如果有病一定能看出来),只是
      自己的狗不能看。观察后得到的结果不得交流,也不能通知病狗的主人。主人一旦推算出自
      己家的是病狗就要枪毙自己的狗(发现后必须在一天内枪毙),而且每个人只有权力枪毙自
      己的狗,没有权力打死其他人的狗。
      第一天大家全看完了,但枪没有响,第二天仍没有枪响。到了第三天传来一阵枪声,问
      村里头共有几条病狗,你如何让推算得出的?
    有3条病狗 
    A、假设有1条病狗,病狗的主人会看到其他狗都没有病,那么就知道自己的狗有病,所以第一天晚上就会有枪响。因为没有枪响,说明病狗数大于1。 
    
      B、假设有2条病狗,病狗的主人会看到有1条病狗,因为第一天没有听到枪响,是病狗数大于1,所以病狗的主人会知道自己的狗是病狗,因而第二天会有枪响。既然第二天也每有枪响,说明病狗数大于2。 
    
    由此推理,如果第三天枪响,则有3条病狗。
    
    1. 不均匀分布的香,每根香烧完的时间是一小时,你能用什么方法来确定一段15分钟的时间?

    香a点燃一头,香b点燃两头。等香b烧完时,时间过去了30分钟。再把香a剩下的另一头也点燃。从这时起到a烧完的时间就是15分钟

    五、性格测试

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

    表象温和 内里狂热

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

    最大优点:自信
    		最大缺点:自信过头
    

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

    		愿意尝试下
    		没有
    创业公司的基础:资金 人脉 最主要的是有一个精良的团队 市场的洞察力
    		如果没有一个良好的基础奠基,做什么都很困难
    

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

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

    有相互学习的氛围
    没有提升自己能力或技术的环境
    
  • 相关阅读:
    lr 增强窗格中,如何生成调试信息?
    lr 自带的例子,如何进行关联,通过代码的函数进行实现
    lr11 录制脚本时候,无法自动启动ie,查了网上很多方法都未解决?
    loadrunner11 录制脚步不成功,在录制概要出现“No Events were detected”,浮动窗口总是显示“0 Events”,解决办法
    loadrunner11 安装及破解教程来自百度文库
    安装loadrunner11 ,出现如下错误如何解决?
    回收站数据删除了,如何进行恢复?
    网管工作方面——————打印机删除了然后开机重启他依然存在,如何解决
    Windows 不能在 本地计算机 启动 SQL Server 服务 错误代码126
    Sorry, the page you are looking for is currently unavailable. Please try again later. Nginx
  • 原文地址:https://www.cnblogs.com/wjw9/p/15511800.html
Copyright © 2011-2022 走看看