0

0

php经典面试题(纯代码版)

php中文网

php中文网

发布时间:2016-07-25 08:59:23

|

1021人浏览过

|

来源于php中文网

原创

  1. /**
  2. * php 面试题
  3. * edit bbs.it-home.org
  4. * at 2013-05-13
  5. */
  6. functiongbk_strrev($str){//----gbk中文字符串翻转-----
  7. $len=strlen($str);
  8. for($i=0;$i
  9. $char=$str{0};
  10. if(ord($char)>127){
  11. $i++;
  12. if($i
  13. $arr[]=substr($str,0,2);
  14. $str=substr($str,2);
  15. }
  16. }else{

  17. $arr[]=$char;
  18. $str=substr($str,1);
  19. }
  20. }
  21. returnimplode(array_reverse($arr));
  22. }
  23. $str=’中文.look!’;

  24. echo gbk_strrev($str);

  25. functionutf8_strrev($string){//-----utf8中文翻转--------

  26. $index=0;

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

  27. $length=strlen($string);

  28. while($first_b=substr($string,$index,1)){

  29. if(ord($first_b)>224){

  30. $arr[]=substr($string,$index,3);

  31. $index+=3;

  32. }elseif(ord($first_b)>192){

  33. $arr[]=substr($string,$index,2);

  34. $index+=2;

  35. }else{

  36. $arr[]=substr($string,$index,1);

  37. $index+=1;

  38. }

  39. }

  40. returnimplode(array_reverse($arr));

  41. }

  42. $str=’中文.look!’;

  43. echo utf8_strrev($str);

  44. functiongbk_substr($str,$length){//-----gbk截取中文字符串--------

  45. $index=0;

  46. $result=’’;

  47. for($i=0;$i

  48. $first_b=substr($str,$index,1);

  49. if(ord($first_b)>127){

  50. $result.= substr($str,$index,2);

  51. $index+=2;

  52. }else{

  53. $result.= substr($str,$index,1);

  54. $index+=1;

  55. }

  56. }

  57. return$result;

  58. }

  59. $str = "你好china";

  60. echo gbk_substr($str, 5);

  61. functionutf8_substr($string,$length){//-----------utf8编码截取中文字符串-------------

  62. $index=0;

  63. $result=’’;

  64. for($i=0;$i

  65. $first_b=substr($string,$index,1);

  66. if(ord($first_b)>224){

  67. $result.= substr($string,$index,3);

  68. $index+=3;

  69. }elseif(ord($first_b>192)){

  70. $result.= substr($string,$index,2);

  71. $index+=2;

  72. }else{

  73. $result.= substr($string,$index,1);

  74. $index+=1;

  75. }

  76. }

  77. return$result;

  78. }

  79. $str = "你好china";

  80. echo (utf8_substr($str, 3));

  81. functionscan_dirs($path){//-----遍历目录------------

  82. $path_source=opendir($path);

  83. while(($file=readdir($path_source))!==false){

  84. //if(is_dir($path.’/’.$file)&&$file!= ’.’&&$file !=’..’){

  85. if(is_dir($path. ’/’ . $file) && $file != ’.’ && $file != ’..’) {

  86. echo$path.’/’.$file,’
    ’;

  87. scan_dirs($path.’/’.$file);

  88. }else{

  89. echo$path.’/’.$file,’
    ’;

  90. }

  91. }

  92. }

  93. $dir_name = ’E:/amp/apache/htdocs/mvc’;

  94. scan_dirs($dir_name);

  95. function get_ext1($file_name){//--------------获取文件后缀名----------

  96. return strrchr($file_name, ’.’);

  97. }

  98. function get_ext2($file_name){

  99. return substr($file_name,strrpos($file_name, ’.’));

  100. }

  101. function get_ext3($file_name){

  102. $arr=explode(’.’, $file_name);

  103. return array_pop($arr);

  104. }

  105. function get_ext4($file_name){

  106. $p = pathinfo($file_name);

  107. return$p[’dirname’].’------’.$p[’basename’].’------’.$p[’extension’];

  108. }

  109. function get_ext5($file_name){

  110. return strrev(substr(strrev($file_name), 0,strpos(strrev($file_name), ’.’)));

  111. }

  112. echoget_ext5(’E:/amp/apache/htdocs/mvc/init.html’);

  113. functionmaopao($arr){//------冒泡排序法------------

  114. $flag=false;

  115. $count= count($arr);

  116. for($i=0;$i

  117. for($j=0;$j

  118. if($arr[$j]>$arr[$j+1]){

  119. $tmp=$arr[$j];

    Shopxp购物系统Html版
    Shopxp购物系统Html版

    一个经过完善设计的经典网上购物系统,适用于各种服务器环境的高效网上购物系统解决方案,shopxp购物系统Html版是我们首次推出的免费购物系统源码,完整可用。我们的系统是免费的不需要购买,该系统经过全面测试完整可用,如果碰到问题,先检查一下本地的配置或到官方网站提交问题求助。 网站管理地址:http://你的网址/admin/login.asp 用户名:admin 密 码:admin 提示:如果您

    下载
  120. $arr[$j]=$arr[$j+1];

  121. $arr[$j+1]=$tmp;

  122. $flag=true;

  123. }

  124. }

  125. if($flag){

  126. $flag=false;

  127. }else{

  128. break;

  129. }

  130. }

  131. return$arr;

  132. }

  133. $arr=array(12,78,49,68,59,67,93,34,46,33);

  134. var_dump(maopao($arr));

  135. functionxuanze($arr){//---------选择排序----------

  136. for($i=0;$i

  137. $minIndex=$i;

  138. $minVal=$arr[$i];

  139. for($j=$i+1;$j

  140. if($minVal>$arr[$j]){

  141. $minVal=$arr[$j];

  142. $minIndex=$j;

  143. }

  144. }

  145. $tmp=$arr[$i];

  146. $arr[$i]=$arr[$minIndex];

  147. $arr[$minIndex]=$tmp;

  148. }return$arr;

  149. }

  150. $arr=array(12,78,49,68,59,67,93,34,46,33);

  151. var_dump(xuanze($arr));

  152. functioninsertSort($arr){//------------插入排序法---------

  153. for($i=1;$i

  154. $insertVal=$arr[$i];

  155. $insertIndex=$i-1;

  156. while($insertIndex>=0&&$insertVal

  157. $arr[$insertIndex+1]=$arr[$insertIndex];

  158. $insertIndex--;

  159. }

  160. $arr[$insertIndex+1]=$insertVal;

  161. }

  162. return$arr;

  163. }

  164. $arr=array(12,78,49,68,59,67,93,34,46,33);

  165. var_dump(insertSort($arr));

  166. function quickSort($array){//-----快速排序法----------

  167. if(count($array)

  168. $key = $array[0];

  169. $left_arr = array();

  170. $right_arr = array();

  171. for($i=1; $i

  172. if ($array[$i]

  173. $left_arr[] = $array[$i];

  174. else

  175. $right_arr[] = $array[$i];

  176. }

  177. $left_arr = quick_sort($left_arr);

  178. $right_arr = quick_sort($right_arr);

  179. return array_merge($left_arr, array($key), $right_arr);

  180. }

  181. $arr=array(12,78,49,68,59,67,93,34,46,33);

  182. var_dump(quickSort($arr));

  183. function seqSch($arr, $num){//---顺序查找-----

  184. $flag=false;

  185. for($i=0;$i

  186. if($arr[$i]==$num){

  187. echo ’找到了,下标为:’.$i;

  188. $flag=true;

  189. }

  190. }

  191. if(!$flag){

  192. echo ’找不到’;

  193. }

  194. }

  195. $arr=array(12,78,49,68,59,67,93,34,46,33);

  196. seqSch($arr,34);

  197. functionerFen($arr,$num,$leftIndex,$rightIndex){//----二分查找---前提数组比为有序数组---

  198. if($leftIndex>=$rightIndex){return’找不到’;}

  199. $midIndex=floor(($leftIndex+$rightIndex)/2);

  200. $midValue=$arr[$midIndex];

  201. if($midValue>$num){

  202. returnerFen($arr,$num,$leftIndex,$midIndex-1);

  203. }elseif($midValue

  204. returnerFen($arr,$num,$midIndex+1,$rightIndex);

  205. }else{

  206. return$midIndex;

  207. }

  208. }

  209. $arr=array(3,5,7,8,9,23,26,36);

  210. $leftIndex=0;

  211. $rightIndex=count($arr);

  212. var_dump(erFen($arr,36,$leftIndex,$rightIndex));

  213. ?>
复制代码


相关文章

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不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

705

2026.02.13

微博网页版主页入口与登录指南_官方网页端快速访问方法
微博网页版主页入口与登录指南_官方网页端快速访问方法

本专题系统整理微博网页版官方入口及网页端登录方式,涵盖首页直达地址、账号登录流程与常见访问问题说明,帮助用户快速找到微博官网主页,实现便捷、安全的网页端登录与内容浏览体验。

233

2026.02.13

Flutter跨平台开发与状态管理实战
Flutter跨平台开发与状态管理实战

本专题围绕Flutter框架展开,系统讲解跨平台UI构建原理与状态管理方案。内容涵盖Widget生命周期、路由管理、Provider与Bloc状态管理模式、网络请求封装及性能优化技巧。通过实战项目演示,帮助开发者构建流畅、可维护的跨平台移动应用。

117

2026.02.13

TypeScript工程化开发与Vite构建优化实践
TypeScript工程化开发与Vite构建优化实践

本专题面向前端开发者,深入讲解 TypeScript 类型系统与大型项目结构设计方法,并结合 Vite 构建工具优化前端工程化流程。内容包括模块化设计、类型声明管理、代码分割、热更新原理以及构建性能调优。通过完整项目示例,帮助开发者提升代码可维护性与开发效率。

22

2026.02.13

Redis高可用架构与分布式缓存实战
Redis高可用架构与分布式缓存实战

本专题围绕 Redis 在高并发系统中的应用展开,系统讲解主从复制、哨兵机制、Cluster 集群模式及数据分片原理。内容涵盖缓存穿透与雪崩解决方案、分布式锁实现、热点数据优化及持久化策略。通过真实业务场景演示,帮助开发者构建高可用、可扩展的分布式缓存系统。

61

2026.02.13

c语言 数据类型
c语言 数据类型

本专题整合了c语言数据类型相关内容,阅读专题下面的文章了解更多详细内容。

30

2026.02.12

雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法
雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法

本专题系统整理雨课堂网页版官方入口及在线登录方式,涵盖账号登录流程、官方直连入口及平台访问方法说明,帮助师生用户快速进入雨课堂在线教学平台,实现便捷、高效的课程学习与教学管理体验。

15

2026.02.12

豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法
豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法

本专题汇总豆包AI官方网页版入口及在线使用方式,涵盖智能写作工具、图片生成体验入口和官网登录方法,帮助用户快速直达豆包AI平台,高效完成文本创作与AI生图任务,实现便捷智能创作体验。

669

2026.02.12

PostgreSQL性能优化与索引调优实战
PostgreSQL性能优化与索引调优实战

本专题面向后端开发与数据库工程师,深入讲解 PostgreSQL 查询优化原理与索引机制。内容包括执行计划分析、常见索引类型对比、慢查询优化策略、事务隔离级别以及高并发场景下的性能调优技巧。通过实战案例解析,帮助开发者提升数据库响应速度与系统稳定性。

58

2026.02.12

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
0基础快速上手自动化测试
0基础快速上手自动化测试

共8课时 | 0.4万人学习

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

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