PHP之几道面试题
1.二分查找算法
- function two_find($arr,$low,$height,$k){
- if($low<=$height){
- $mid = intval(($low+$height)/2);
- if($arr[$mid]==$k){
- return true;
- }elseif($k<$arr[$mid]){
- return two_find($arr,$low,$mid-1,$k);
- }else{
- return two_find($arr,$mid+1,$height,$k);
- }
- }
- return false;
- }
- $arr = array(1,3,4,5,6,9,10,15,20,25,27,30);
- $key = 20;
- if(two_find($arr,min(array_keys($arr)),max(array_keys($arr)),$key)){
- echo "二分查找成功!";
- }else{
- echo "二分查找失败!";
- }
2.一个字符串中含有字母和数字,请输出所有数字的和,注意,连续的数字算一个数字。(比如输入字符串为“23abc23dbf23” 最后输入的值应该为:69)
- function str_sum($str){
- $reg = '/[1-9]+[0-9]+/';
- preg_match_all($reg,$str,$marth);
- if(empty($marth)){
- return false;
- }
- return array_sum($marth[0]);
- }
- echo str_sum("12adb012add012");
3.php从url取出文件扩展名,尽可能高效和简单。
- function get_url($url){
- $path = pathinfo($url);
- $extenstion = explode("?",$path['extension']);
- return $extenstion[0];
- }
- echo '从url取出文件扩展名,url为:http://m.cn/asdfasdf/2.asdf.adsfa.php?a=bbb&c=adfas,他的扩展名为:'.get_url('http://m.cn/asdfasdf/2.asdf.adsfa.php?a=bbb&c=adfas');
4.php中控制页面的显示状态为404,请写出PHp代码
- echo "php中用header()函数是可以为返回页面添加404的头信息的,从而提示浏览器该网页找不到了。所以可以使用:header('HTTP/1.0 404 Not Found');或者:header('Status: 404 Not Found');后者是在FastCGI模式下使用的,在php代码中可以把两句直接同时写上。";
PHP之几道面试题的更多相关文章
- Java中ArrayList相关的5道面试题
本文参考了 <关于ArrayList的5道面试题 > 1.ArrayList的大小是如何自动增加的? 这个问题我想曾经debug过并且查看过arraylist源码的人都有印象,它的过程是: ...
- ASP.NET 经典60道面试题
转:http://bbs.chinaunix.net/thread-4065577-1-1.html ASP.NET 经典60道面试题 1. 简述 private. protected. public ...
- 嵌入式C开发人员的最好的0x10道笔试题
嵌入式C开发人员的最好的0x10道笔试题 2006-11-22 15:53 约定: 1) 下面的测试题中,认为所有必须的头文件都已经正确的包含了 2)数据类型 char 一个字节 1 byte int ...
- Java 208 道面试题:第一模块答案
目前市面上的面试题存在两大问题:第一,题目太旧好久没有更新了,还都停留在 2010 年之前的状态:第二,近几年 JDK 更新和发布都很快,Java 的用法也变了不少,加上 Java 技术栈也加入了很多 ...
- Java并发编程75道面试题及答案
1.在java中守护线程和本地线程区别? java中的线程分为两种:守护线程(Daemon)和用户线程(User). 任何线程都可以设置为守护线程和用户线程,通过方法Thread.setDaemon( ...
- 两道面试题,带你解析Java类加载机制
文章首发于[博客园-陈树义],点击跳转到原文<两道面试题,带你解析Java类加载机制> 在许多Java面试中,我们经常会看到关于Java类加载机制的考察,例如下面这道题: class Gr ...
- 【转】两道面试题,带你解析Java类加载机制(类初始化方法 和 对象初始化方法)
本文转自 https://www.cnblogs.com/chanshuyi/p/the_java_class_load_mechamism.html 关键语句 我们只知道有一个构造方法,但实际上Ja ...
- Java 208 道面试题:Java 基础模块答案
目前市面上的面试题存在两大问题:第一,题目太旧好久没有更新了,还都停留在 2010 年之前的状态:第二,近几年 JDK 更新和发布都很快,Java 的用法也变了不少,加上 Java 技术栈也加入了很多 ...
- 你所不知道的库存超限做法 服务器一般达到多少qps比较好[转] JAVA格物致知基础篇:你所不知道的返回码 深入了解EntityFramework Core 2.1延迟加载(Lazy Loading) EntityFramework 6.x和EntityFramework Core关系映射中导航属性必须是public? 藏在正则表达式里的陷阱 两道面试题,带你解析Java类加载机制
你所不知道的库存超限做法 在互联网企业中,限购的做法,多种多样,有的别出心裁,有的因循守旧,但是种种做法皆想达到的目的,无外乎几种,商品卖的完,系统抗的住,库存不超限.虽然短短数语,却有着说不完,道不 ...
- js 从两道面试题加深理解闭包与箭头函数中的this
壹 ❀ 引 在本文之前我已经花了两个篇幅专门介绍了JavaScript中的闭包与this,正好今早地铁上看到了两道面试题,试着做了下发现挺有意思,所以想单独写一篇文章来记录解析过程.若你对于闭包与t ...
随机推荐
- iscroll.js 下拉刷新和上拉加载
html代码如下 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...
- iOS多线程笔记
在iOS开发中,有三种多线程处理方式: 1. 利用NSThread 2. NSOperation和NSOperationQueue 3. 利用GCD(Grand Central Dispatch) 使 ...
- kettle系列-kettle管理平台部署说明
本介绍我的开源项目[kettle-manager]kettle管理平台如何获取并部署使用,该项目介绍请参看另一篇博文:http://www.cnblogs.com/majinju/p/5739820. ...
- 通过JSch编写上传、下载文件
package com.hct.util; /** * @作者: HCT * @时间:2016年12月29日下午3:13:20 * @描述: * */ import java.io.*; import ...
- DBCP连接池
方法一: package DBCPUtils; import java.util.List;import java.util.Properties; import javax.sql.DataSour ...
- 1Z0-050
QUESTION 13 View the Exhibit.Examine the following command that is executed for the TRANSPORT table ...
- 一.Timesten安装
一,安装timesten IMDB并测试 1. 创建数据库相关用户和组 groupadd timesten useradd -g timesten -G dba timesten passwd tim ...
- 使用Lucene索引和检索POI数据
1.简介 关于空间数据搜索,以前写过<使用Solr进行空间搜索>这篇文章,是基于Solr的GIS数据的索引和检索. Solr和ElasticSearch这两者都是基于Lucene实现的,两 ...
- 前端知识杂烩(HTML[5]?+CSS篇)
1. CSS 优先级算法如何计算?2.如何居中div?如何居中一个浮动元素?如何让绝对定位的div居中?3.用纯CSS创建一个三角形的原理是什么?4. 如何解决inline-block元素的空白间距( ...
- 模拟CSS3 多组位移运动属性的框架封装
obj是将要运动的对象,json是运动完成时的位移结果. 封装要点: 1.定时器开关flag的定义要放在for in结构的外面,否则,每遍历一次,都会定义一个 新的flag 2.if(current ...