0

0

php面试题中php核心技术的问题分享

黄舟

黄舟

发布时间:2017-11-10 10:02:23

|

2586人浏览过

|

来源于php中文网

原创

我们在之前的文章中我们介绍了php面试题的汇总,以及php面试题中thinkphp以及笔记题目的汇总,这些对新手以及工作经验不是很多的小伙伴们来说已经是足够使用了,但是对于一些高手甚至是工作三四年的朋友来说我们之前介绍的php面试题显然就不够用了,那么我们今天就大家来总结下php面试题中的php核心技术!

PHP核心技术

1.请写一段PHP代码,确保多个进程同时写入同一个文件成功

核心思路:加锁

2.写一个函数,尽可能高效的,从一个标准url里取出文件的扩展名,例如:http://www.php.cn/abc/de/fg.php?id=1需要取出php或.php

立即学习PHP免费学习笔记(深入)”;

 http [host] => www.php.cn [path] => /abc/de/fg.php [query] => id=1 )

        $file = basename($arr['path']);
        $ext = explode('.', $file);        
return $ext[count($ext)-1];
    }    // 方案二
    function getExt2($url){
        $url = basename($url);
        $pos1 = strpos($url,'.');
        $pos2 = strpos($url,'?');        
if (strstr($url,'?')) {            
return substr($url,$pos1+1,$pos2-$pos1-1);
        } else {            
return substr($url,$pos1);
        }

    }

    $path = "http://www.php.cn/abc/de/fg.php?id=1";    
echo getExt1($path);    
echo "
"; echo getExt2($path);?>

相关题目:使用五种以上方式获取一个文件的扩展名,要求:dir/upload.image.jpg,找出.jpg或者jpg,必须使用PHP自带的处理函数进行处理,方法不能明显重复,可以封装成函数,比如get_ext1(filename),getext2(file_name)

3.简述论坛中无限分类的实现原理

创建类别表如下:

CREATE TABLE category(
cat_id smallint unsigned not null auto_increment primary key comment'类别ID',
cat_name VARCHAR(30)NOT NULL DEFAULT''COMMENT'类别名称',
parent_id SMALLINT UNSIGNED NOT NULL DEFAULT 0 COMMENT'类别父ID')engine=MyISAM charset=utf8;

编写一个函数,递归遍历,实现无限分类

4.写出一个正则表达式,过虑网页上的所有JS/VBS脚本(即把script标记及其内容都去掉)

过滤javascript脚本参考:

alert('cc');";
    $pattern = '/]*?>.*?/si';    
echo preg_replace($pattern, "脚本内容", $script);//以下内容不显示:脚本内容
?>

5.写出一个能创建多级目录的PHP函数

YIXUNCMS中秋专版2.0.4
YIXUNCMS中秋专版2.0.4

系统介绍:YIXUNCMS中专专版是易迅软件工作室在中秋节来临之即推出的专题模板建站系统,使用增强版后台管控系统,板板设计符合节日特点。易迅软件工作室恭祝全国人民中秋快乐。特别提示:由于网站页面的不同设计,部分后台功能未在前端进行体现。系统特点:1、采用目前流行的PHP语言编写,底层采用超轻量级框架作为系统支撑;2、页面布局使用DIV+CSS技术,遵循WEB标准,及大提高页面的浏览速度;3、使用应

下载

6.PHP的垃圾收集机制是怎样的

PHP可以自动进行内存管理,清除不再需要的对象。
PHP使用了引用计数(reference counting)这种单纯的垃圾回收(garbage collection)机制。每个对象都内含一个引用计数器,每个reference连接到对象,计数器加1。当reference离开生存空间或被设为NULL,计数器减1。当某个对象的引用计数器为零时,PHP知道你将不再需要使用这个对象,释放其所占的内存空间。

7.写一个函数,能够遍历一个文件夹下的所有文件和子文件夹

8.PHP中如何判断一个字符串是否是合法的日期模式:2007-03-13 13:13:13。要求代码不超过5行

9.PHP中,如何获得一个数组的键值?

使用key()可以获得数组中当前元素的键名,使用current()则可以返回当前元素的值。
使用array_keys()则可以得到数组中所有的键名。
使用foreach结构foreach($arr as key=>value)可以通过key和value分别获取键名和值。

10.如果模板是用smarty模板。怎样用section语句来显示一个名为$data的组。比如:

$data=array(0=>array('id'=>8,'name'=>'name1'),1=>array('id'=>10,'name'=>'name2'),2=>array('id'=>15,'name'=>'name3')
);

写出在模板页的代码?若用foreach语句又要怎样显示呢?

用section语句:

<{section name=test loop=$data start=0 step=1}>
id:<{$data[test].id}>
name:<{$data[test].name}>

<{sectionelse}> 数组为空 <{/section}>

用foreach语句:

<{foreach from=$data item=test}>
id:<{$test.id}>
name:<{$test.name}>

<{foreachelse}> 数组为空 <{/foreach}>

总结:

在我们这片文章我们主要给大家总结的是php面试题中php核心技术,对于新手可能有点深度了,但是对于经验丰富的朋友来说,这确实一个不错的选择!希望对你有所帮助!

相关推荐:

php面试题中笔试题目的汇总


2017最全的php面试题目及答案总结


php面试题中Thinkphp题目的汇总

2017招聘季:PHP面试题超强总结!

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

php

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
C++ 设计模式与软件架构
C++ 设计模式与软件架构

本专题深入讲解 C++ 中的常见设计模式与架构优化,包括单例模式、工厂模式、观察者模式、策略模式、命令模式等,结合实际案例展示如何在 C++ 项目中应用这些模式提升代码可维护性与扩展性。通过案例分析,帮助开发者掌握 如何运用设计模式构建高质量的软件架构,提升系统的灵活性与可扩展性。

14

2026.01.30

c++ 字符串格式化
c++ 字符串格式化

本专题整合了c++字符串格式化用法、输出技巧、实践等等内容,阅读专题下面的文章了解更多详细内容。

9

2026.01.30

java 字符串格式化
java 字符串格式化

本专题整合了java如何进行字符串格式化相关教程、使用解析、方法详解等等内容。阅读专题下面的文章了解更多详细教程。

12

2026.01.30

python 字符串格式化
python 字符串格式化

本专题整合了python字符串格式化教程、实践、方法、进阶等等相关内容,阅读专题下面的文章了解更多详细操作。

4

2026.01.30

java入门学习合集
java入门学习合集

本专题整合了java入门学习指南、初学者项目实战、入门到精通等等内容,阅读专题下面的文章了解更多详细学习方法。

20

2026.01.29

java配置环境变量教程合集
java配置环境变量教程合集

本专题整合了java配置环境变量设置、步骤、安装jdk、避免冲突等等相关内容,阅读专题下面的文章了解更多详细操作。

18

2026.01.29

java成品学习网站推荐大全
java成品学习网站推荐大全

本专题整合了java成品网站、在线成品网站源码、源码入口等等相关内容,阅读专题下面的文章了解更多详细推荐内容。

19

2026.01.29

Java字符串处理使用教程合集
Java字符串处理使用教程合集

本专题整合了Java字符串截取、处理、使用、实战等等教程内容,阅读专题下面的文章了解详细操作教程。

3

2026.01.29

Java空对象相关教程合集
Java空对象相关教程合集

本专题整合了Java空对象相关教程,阅读专题下面的文章了解更多详细内容。

6

2026.01.29

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 10.4万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 11.2万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号