`

色色整理的PHP面试题,能答对找7/8k应该不成问题

阅读更多

总是有人问我要这些,让我帮出题... 现在发份上来吧,如果能做完做好,建议薪资在 6-9之间都可以给...

 

水平应该能达到 中

 

这个是我12年左右招人想出来的,基本是满足初中级的PHP面试了

写道
PHP 基础知识部分

1. 求$a的值

$a = "hello";
$b = &$a;
unset($b);
$b = "world";
echo $a;

2. 求$b的值

$a = 1;
$x = &$a;
$b = $a++;
echo $b;

3. 写出一个函数实现 删除指定目录包括其下的所有子目录以及文件

4. 写一个函数,算出两个文件的相对路径,如:
$a = '/a/b/c/d/e.php';
  $b = '/a/b/12/34/c.php';


javascript 基础知识部分

1. 谈谈js实现继承的几种方式,并写出demo

2. 谈谈你熟悉的js框架,并实现下面DOM元素的获取

<div drag="true" index="1"></div>
<div drag="true" index="2"></div>
<div drag="true"></div>

要求找到drag="true" 并且 index="1" 或 无index属性的div

提示: 如果不能一次写出,请完成下来步骤
1. 找到drag="true" 并且 index="1"

2. 找到drag="true" 并且 无index属性的

3. 将二者联立起来得到


3. 实现一个遮罩层效果,要求要显示的元素在页面上居中显示

4. 闭包知识考察

function step(a){
return function(x){
return x+a++;
}
}

var a = step(10);
var b = step(20);
alert(a(10));
alert(b(20));
var a="123abc";
alert(typeof(a++));
alert(a);


MySQL 知识部分

1. 某内容管理系统中,表message有如下字段
id 文章id
title 文章标题
content 文章内容
category_id 文章分类id
hits 点击量

创建上表,写出MySQL语句

2. 同样上述内容管理系统:表comment记录用户回复内容,字段如下
comment_id 回复id
id 文章id,关联message表中的id
comment_content 回复内容

现通过查询数据库需要得到以下格式的文章标题列表,并按照回复数量排序,回复最高的排在最前面

文章id 文章标题 点击量 回复数量

用一个SQL语句完成上述查询,如果文章没有回复则回复数量显示为0


3. 上述内容管理系统,表category保存分类信息,字段如下

category_id int(4) not null auto_increment;
categroy_name varchar(40) not null;

用户输入文章时,通过选择下拉菜单选定文章分类

写出如何实现这个下拉菜单[可使用PHP,JAVASCRIPT,HTML]


Mysql 知识扩展部分

4. 系统需要对分类表进行扩展,使它能支持无限级别分类,请设计这个表结构,并根据你的设计完成下述场景

1. 查找隶属指定分类下的所有文章(包含子分类下的所有文章)
2. 查找指定文章的分类到根分类的层级,比如:
文章"Mysql优化心得" 它对应在 "程序设计/Mysql/运维/" 下
3. 删除分类时要求也能删除其下所有子分类


5. 系统需要对文章增加标签功能,(标签与文章是多对多的关系),用于实现"相关文章"功能.请设计这个表结构,
并根据你的设计完成下述场景.

1. 查找 与指定文章最相近的五篇文章 (相似度的算法 以相同标签的数量作为依据,数量越大说明越相似)


综合知识部分:

1. 谈谈你对Cookie 与 Session 的理解,它们的适用场景是什么,如有可能可阐述下在多种应用下Session如何共享的思路

2. 谈谈你对单点登录的理解,比如原理与实现,以及实现过程中有哪些问题需要注意

3. 谈谈你对MVC的理解,MVC的缺点是什么,如果让你实现一个MVC框架,你想怎样实现?

4. 谈谈你平常工作中使用过的权限管理部分,你是如何理解与实现的?

 

2
2
分享到:
评论
3 楼 vb2005xu 2015-05-04  
<?php
/** 计算path1 相对于 path2 的路径,即在path2引用paht1的相对路径
* @param  String $path1
* @param  String $path2
* @return String
*/
function getRelativePath($path1, $path2){
    $arr1 = explode('/', $path1);
    $arr2 = explode('/', $path2);

    // 获取相同路径的部分
    $intersection = array_intersect_assoc($arr1, $arr2);

    $depth = 0;

    for($i=0,$len=count($intersection); $i<$len; $i++){
        if(!isset($intersection[$i])){
            $depth = $i;
            break;
        }
    }

    // 将path2的/ 转为 ../,path1获取后面的部分,然后合拼
    $tmp = array_merge(array_fill(0, count($arr2)-$depth-1, '..'), array_slice($arr1, $depth));

    $relativePath = implode('/', $tmp);

    return $relativePath;
}
?>

2 楼 vb2005xu 2015-05-04  
再发一个哥们出的,考察2年以下工作经验的童鞋们
引用

php面试题 可上网查询 可查手册 电脑桌面上有php手册


程序目录 E:\data\webroot 和测试 \data\webroot同步

在浏览器访问 http://10.10.10.10 进行测试

测试机 10.10.10.10 ssh user:vagrant pass:vagrant  有sudo权限

memcache 127.0.0.1 11211
redis 127.0.0.1 6379
mysql  127.0.0.1 用户名root 密码为空

题A


1.请写代码完成一个简单的图片上传过程

2.请在mysql表中创建你的姓名全拼的数据库名 并创建一个用户表 表中字段 表中包括 用户名 密码 真实姓名 邮箱 手机号 性别 登录ip 注册时间

3.在第二题所创建的表中 写程序插入10000条数据 (代码中自己生成数据)

4.做一个登录页面 并做客户端和服务器端验证

5.做用户列表分页显示


题B


1.不用GUI工具,命令行在测试机数据库  库名 你名字全拼  创建user表  字段包括不限于 用户名 密码 真实姓名 邮箱  手机号 性别 登录ip 注册时间
  并给出建表的sql语句。

2.命令行给你的库表 创建一个用户 绑定到你的数据库 权限仅为读和写。 给出sql语句

3.写一个数据库连接类 要求以单例模式实现。

4.根据你创建的用户表, 构造一个user类,尽可能的将各种可能用到的属性,方法写完整。

5.user表不动  扩展出一个店主用户表来 属性包括不限于  店铺名 开店时间  店铺地址 店铺邮编 并写一个shopUser类继承user类  增加 新增店铺 删除店铺 查询店铺属性等方法
1 楼 freezingsky 2014-03-07  
4. 写一个函数,算出两个文件的相对路径,如:
$a = '/a/b/c/d/e.php';
$b = '/a/b/12/34/c.php';

就这道题还有点意思,相当于求二个字符串的公共最大子串。不过,现场笔试的时候,基本都是采用暴力方式去匹配吧。

相关推荐

    Java基于springboot+vue的校园自助洗衣服务管理系统的设计与实现.rar

    【基于Springboot+Vue的设计与实现】高分通过项目,已获导师指导。 本项目是一套基于Springboot+Vue的管理系统,主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的Java学习者。也可作为课程设计、期末大作业 包含:项目源码、数据库脚本、开发说明文档、部署视频、代码讲解视频、全套软件等,该项目可以直接作为毕设使用。 项目都经过严格调试,确保可以运行! 环境说明: 开发语言:Java 框架:springboot,mybatis JDK版本:JDK1.8 数据库:mysql 5.7数据库工具:Navicat11开发软件:eclipse/idea Maven包:Maven3.3

    广义表的基本操作与高级功能

    这份资料详细介绍了广义表(Generalized List)这一重要的数据结构。广义表是一种递归数据结构,其元素可以是原子(基本数据类型,如数字、字符)或者子表(另一个广义表),具有灵活性和递归性的特点。 资料主要包含七个部分:基本概念介绍、表示方法、存储结构、基本操作、高级操作、应用场景和优化策略。在基本操作部分,详细讲解了创建、遍历、插入、删除等功能的具体实现,每个操作都配有完整的C语言代码示例。在应用场景部分,展示了广义表在表示嵌套表达式、树结构和多层嵌套数据等实际场景中的应用。针对实现过程中可能遇到的内存管理、递归效率、栈溢出等问题,资料也提供了相应的优化策略和解决方案。

    舷侧和端射天线阵列辐射方向图 matlab代码.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    图引擎模块(GE)是MindSpore的一个子模块,其代码由C++实现,前端和 Ascend 处理器之间的连接链接模块

    图引擎模块(GE)是MindSpore的一个子模块,其代码由C++实现,位于前端模块ME和底层硬件之间,起到承接作用。图引擎模块以ME下发的图作为输入,然后进行一系列的深度图优化操作,最后输出一张可以在底层硬件上高效运行的图。GE针对昇腾AI处理器的硬件结构特点,做了特定的优化工作,以此来充分发挥出昇腾AI处理器的强大算力。在进行模型训练/推理时,GE会被自动调用而用户并不感知。GE主要由GE API和GE Core两部分组成

    校园数字化图书馆系统 JAVA毕业设计 源码+数据库+论文+启动教程(SpringBoot+Vue.JS).zip

    校园数字化图书馆系统 JAVA毕业设计 源码+数据库+论文+启动教程(SpringBoot+Vue.JS) 项目启动教程:https://www.bilibili.com/video/BV1jKDjYrEz1

    matplotlib图例指南.pdf

    matplotlib图例指南

    大学生创业-JAVA-基于springboot+vue的大学生创业项目的信息管理系统

    大学生创业-JAVA-基于springboot+vue的大学生创业项目的信息管理系统

    2024中国数据安全企业全景图和典型数据安全产品案例集

    2024年11月,中国电子信息产业发展研究院(赛迪研究院)、中国软件评测中心(工业和信息化部软件与集成电路促进中心)和FreeBuf咨询共同发布《2024年中国数据安全企业全景图》及典型数据安全产品案例集。

    Java基于springboot+vue的校园二手商品交易系统设计与实现.rar

    【基于Springboot+Vue的设计与实现】高分通过项目,已获导师指导。 本项目是一套基于Springboot+Vue的管理系统,主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的Java学习者。也可作为课程设计、期末大作业 包含:项目源码、数据库脚本、开发说明文档、部署视频、代码讲解视频、全套软件等,该项目可以直接作为毕设使用。 项目都经过严格调试,确保可以运行! 环境说明: 开发语言:Java 框架:springboot,mybatis JDK版本:JDK1.8 数据库:mysql 5.7数据库工具:Navicat11开发软件:eclipse/idea Maven包:Maven3.3

    Java基于springboot+vue的高校毕业生实习及就业去向信息管理系统.rar

    【基于Springboot+Vue的设计与实现】高分通过项目,已获导师指导。 本项目是一套基于Springboot+Vue的管理系统,主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的Java学习者。也可作为课程设计、期末大作业 包含:项目源码、数据库脚本、开发说明文档、部署视频、代码讲解视频、全套软件等,该项目可以直接作为毕设使用。 项目都经过严格调试,确保可以运行! 环境说明: 开发语言:Java 框架:springboot,mybatis JDK版本:JDK1.8 数据库:mysql 5.7数据库工具:Navicat11开发软件:eclipse/idea Maven包:Maven3.3

    (源码)基于TreasureHunt项目的户外寻宝游戏系统.zip

    # 基于TreasureHunt项目的户外寻宝游戏系统 ## 项目简介 TreasureHunt是一个旨在鼓励户外活动的寻宝游戏系统。该系统包括一个或多个宝藏和一个寻宝设备(猎手)。通过此项目,参与者可以在户外享受寻找宝藏的乐趣。 ## 项目的主要特性和功能 1. 宝藏与猎手交互猎手设备能够检测并追踪附近的宝藏。 2. 真实距离估算通过WiFi信号估算宝藏与猎手之间的距离。 3. 3D打印的抛物面反射器用于增强猎手设备的信号接收能力。 4. 丰富的用户界面提供详细的操作指南和指示,帮助用户更好地使用该系统。 5. 测试与实验项目中还包括对如何通过WiFi计算距离的尝试和文档记录。 6. 多重库支持项目使用了多个库,如Adafruit SSD1306、Adafruit GFX Library、Adafruit BusIO等,以实现各项功能。 ## 安装使用步骤

    在硅谷企业工程师领导力导师道路上的一些观察和思考.pdf

    在硅谷企业工程师领导力导师道路上的一些观察和思考.pdf

    Java基于springboot+vue的在线车辆租赁信息管理系统的设计与实现.rar

    【基于Springboot+Vue的设计与实现】高分通过项目,已获导师指导。 本项目是一套基于Springboot+Vue的管理系统,主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的Java学习者。也可作为课程设计、期末大作业 包含:项目源码、数据库脚本、开发说明文档、部署视频、代码讲解视频、全套软件等,该项目可以直接作为毕设使用。 项目都经过严格调试,确保可以运行! 环境说明: 开发语言:Java 框架:springboot,mybatis JDK版本:JDK1.8 数据库:mysql 5.7数据库工具:Navicat11开发软件:eclipse/idea Maven包:Maven3.3

    jquery+css3实现的小狗绕地球奔跑动态404页面错误代码.zip

    jquery+css3实现的小狗绕地球奔跑动态404页面错误代码

    使用惠更斯球面卷积的自由空间传播函数Matlab代码.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    java青协志愿服务管理系统源码数据库 MySQL源码类型 WebForm

    Java青协志愿服务管理系统源码 前台技术 JSP(css,js,ajax,el,java) 项目技术 Struts+srping+Hibernate Struts 控制器(负责接收据+处理数据+响应结果(重定向+转)) Spring 工厂类 Hibernate 持久性访问层 log4j.properties 日志文件 *.properties配置文件 Struts.xml 配置action WebRoot根目录 fckeditor在线编辑器, images img 图片 upload,updown 上传下载, admin common 前台JSP页面 WEB-INF (lib+jsp+*.xml) applicationContext.xml 中心配置文件 web.xml 项目配置文件 项目一些基本配置参数

    C#ASP.NET中小企业仓库管理系统源码数据库 SQL2008源码类型 WebForm

    ASP.NET中小企业仓库管理系统源码 源码包含三层代码生成器、数据库设计和表字段说明等。其中包括代码生成器和数据库设计.CDM字段说明 菜单功能 1、入库管理:物品入库管理、入库退货管理、入库结算管理 2、出库管理:物品出库管理、出库结算管理 3、查询统计:物品入库查询、物品出库查询、入库退货查询、入库结算查询、出库结算查询、出库排行榜查询 4、库存管理:库存统计、在库资金统计、库存预警管理 5、基础信息管路:类别管理、物品管理、供应商管理 6、系统设置:管理员管理、操作员管理、用户权限管理 7、密码修改 8、退出系统

    ioDraw-v3.1.0-mac-x64.dmg,流程图、思维导图、甘特图绘制软件,macOS x64版

    1、ioDraw 是免费的在线作图软件,用于制作流程图、思维导图、甘特图、白板手绘图、mermaid流程图、海报设计、折线图、柱状图、拓扑图、组织结构图、UML、ER和时序图、平面设计图、电子电路图等,无需注册即可使用 2、替代Visio的免费软件,无使用限制 3、适合程序员、白领、系统架构师、项目经理、平面设计师、产品经理使用 4、v3.1.0变更日志: 新增将文件保存到百度网盘。 新增对macOS的支持。 修复第三方平台文件列表页显示问题。

    yolo算法-摩托车辆计数数据集-282张图像带标签-骑手.zip

    yolo系列算法目标检测数据集,包含标签,可以直接训练模型和验证测试,数据集已经划分好,包含数据集配置文件data.yaml,适用yolov5,yolov8,yolov9,yolov7,yolov10,yolo11算法; 包含两种标签格:yolo格式(txt文件)和voc格式(xml文件),分别保存在两个文件夹中; yolo格式:<class> <x_center> <y_center> <width> <height>, 其中: <class> 是目标的类别索引(从0开始)。 <x_center> 和 <y_center> 是目标框中心点的x和y坐标,这些坐标是相对于图像宽度和高度的比例值,范围在0到1之间。 <width> 和 <height> 是目标框的宽度和高度,也是相对于图像宽度和高度的比例值

    这是来自于的c++考试题目

    这是来自于的c++考试题目

Global site tag (gtag.js) - Google Analytics