程序员找工作必备 PHP 基础面试题(二)

编程之家收集整理的这篇文章主要介绍了程序员找工作必备 PHP 基础面试题(二)编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1、我们知道 autoload 可以实现类的自动载入,如何把一个类 splDemo 的方法 autoload 注册成为一个__autoload (关键词:spl)

 abstract class splDemo {
    function __autoload($class){
         // ....
     }
 }

  

2、下面可以捕获异常吗?如何实现捕获。(关键词:set_error_handler ErrorExcpetion)

try {
     //读取不存在的文件
     file_get_contents('/home/not-exists.file');
 } catch (Exception $e){
     echo $e->getMessage();
 }

  

3、根据 span value 的值,排序 li,可以使用 jQuery

 <ul>
    <li><span value="3">三</span></li>
    <li><span value="1">一</span></li>
    <li><span value="2">二</span></li>
 </ul>
 

<script>
        $(function(){
                var arr=[];
                $('span').each(function(i){
                    arr[arr.length]=$(this).attr('value')+'-'+$(this).html();
                });
                //倒叙排序
                /*function paixu(num1,num2){
                    if(num1>num2){
                        return -1;
                    }else if(num1==num2){
                        return 0;
                    }else{
                        return 1;
                    }
                }
                arr.sort(paixu);*/
                arr.sort();
                    $('li').remove();
                for(var i=0;i<arr.length;i++){//字符串切割-
$('ul').append('<li><span value="'+arr[i]+'">'+arr[i].substr(arr[i].indexOf('-',2))+'</span></li>');

                }
            });
</script>

  

4、分别读取 div 节点 attr 属性

   1) <div attr = "abcd" ></div> // 输出abcd
   2) <div attr="abcd\">"></div> // 输出abcd">
javacript 答案:alert($("div:eq(1)").attr("attr"));

 

5、尽可能多的写出 PHP 处理字符串函数,并写出他们对应的作用。

  • Strops () 返回某个字符串在一字符串中首先出现的位置
  • Strstr () 返回一个字符串在另一个字符串中的第一次出现
  • Substr()截取字符串
  • Substr()截取字符串
  • trim () 删除字符串两端的空格或其他预定义字符
  • str_pad () 把字符串填充为指定的长度
  • str_repeat () 重复使用指定字符串
  • str_split () 把字符串分割到数组中
  • strrev () 反转字符串
  • str_shuffle () 随机地打乱字符串中所有字符
  • number_format () 通过千位分组来格式化数字
  • strtolower () 字符串转为小写
  • strtoupper () 字符串转为大写
  • strcasecmp () 不区分大小写比较两字符串

6、语句 include 和 require 的区别是什么?为避免多次包含同意文件,可用?语句来代替他们?

Include 在包含文件时若出错,仅报出一条错误信息,代码继续执行Require 在包含文件时若出错,报出错误信息的同时代码将不会往下执行避免多次包含同一文件,可用 include_once 或者 require_once 语句来代替他们

 

(1) include () 在执行文件时每次都要进行读取和评估;require () 文件只处理一次 (实际上文件内容替换了 require () 语句)

(2) require () 通常放在 PHP 脚本程序的最前面 include () 的使用和 require () 一样,一般放在流程控制的处理区段中,PHP 脚本文件读到 include () 语句时,才将它包含的文件读进来,这种方式,可以把程序执行时的流程简单化

 

(3) require () 和 include () 语句是语言结构,不是真正的函数,可以像 PHP 的其他语言结构一样

(4) require () 包含文件失败,停止执行,给出错误 (致命的);

(5) include () 常用于动态包含。通常是自动加载的文件,即使加载出错,整个程序还是继续执行一个页面声明,另一个页面调用包函文件失败,继续向下执行,返回一条警告

(6) include_once () 和 require_once () 语句也是在脚本执行期间包括并运行指定文件,与 include () require () 唯一的区别是如果文件中的代码已经被包括了,则不会再次包括.

 

7、使用 PHP 写一段简单 sql 语句实现增删改查

主机 ip:192.168.1.222

数据库用户名:root

数据库密码:admin123

表名 User

name tel content date

张三 13333663366 大专毕业 2006-10-11

张三 13612312331 本科毕业 2006-10-15

张四 021-55665566 中专毕业 2006-10-15

答案:

a、连接数据库,向user表增加一行数据。
姓名:刘五,电话:18811002233,学历:本科,日期:当下日期
Insert into User (name,tel,content,date)values(‘刘五’,’ 18811002233’,’本科’,time())

b、删除姓名为里斯的用户所有信息。
Delete from user where name=”里斯”

c、更新手机号码为1333663366用户的学历为“本科”
Update user set ‘content’=’本科’where tel=‘1333663366’

d、查处所有姓名为“张三”的内容并打印出来。
$MysqL_db=MysqL_connect("local","root","pass");
  @MysqL_select_db("DB",$MysqL_db);
    $result = MysqL_query("SELECT * FROM `user` WHERE name='张三'");
    while($rs = MysqL_fetch_array($result)){
      echo $rs["tel"].$rs["content"].$rs["date"];
    }

  

8、如何修改 SESSION 的生存时间。

方法一:
修改 PHP.ini 的 session_gc_maxlefttime=9999;

方法二:

$savePath = "./session_save_dir/";
$lifeTime = 小时 * 秒;
session_save_path($savePath);
session_set_cookie_params($lifeTime);
session_start();

  

方法三:setcookie () and session_set_cookie_params ($lifeTime);

9、用 PHP 写出显示客户端 IP 与服务器 IP 的代码

答:打印客户端 IP:

echo$_SERVER[‘REMOTE_ADDR’];

  

打印服务器 IP:

echo $_SERVER[‘SERVER_ADDR’];

  

 

程序员找工作必备 PHP 基础面试题(一)

 

面试题系列:

2020最新PHP面试题(附带答案)

分享一波腾讯PHP面试题

2019年PHP最新面试题(含答案)

Redis 高级面试题 学会这些还怕进不了大厂?

面试官三年经验PHP程序员知识点汇总

php面试题之PHP核心技术

掌握 Redis这些 知识点,面试官一定觉得你很 NB

当面试官问你:如何进行性能优化?

PHP 经典面试题集

更多学习内容请访问:

腾讯T3-T4标准精品PHP架构师教程目录大全,只要你看完保证薪资上升一个台阶(持续更新)

以上内容希望帮助到大家,很多PHPer在进阶的时候总会遇到一些问题和瓶颈,业务代码写多了没有方向感,不知道该从那里入手去提升,对此我整理了一些资料,包括但不限于:分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、MysqL优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货需要的可以免费分享给大家,需要的可以加入我的官方群点击此处

总结

以上是编程之家为你收集整理的程序员找工作必备 PHP 基础面试题(二)全部内容,希望文章能够帮你解决程序员找工作必备 PHP 基础面试题(二)所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
喜欢与人分享编程技术与工作经验,欢迎加入编程之家官方交流群!

相关文章

猜你在找的PHP面试题相关文章

前段时间专心面过腾讯,经过了N轮的技术面,结果还是挂了,但没挂在技术面,比较欣慰,回来之后写一点总结,以供有梦想进入腾讯做后台服务器开发的同学参考,本文章为胡成精心总结,胡成原创,copy和转载请通知
1)tcp三次握手的过程,accept发生在三次握手哪个阶段?2)Tcp流, udp的数据报,之间有什么区别,为什么TCP要叫做数据流?3)const的含义及实现机制,比如:const int i,是
1、优化 MYSQL 数据库的方法 (1) 选取最适用的字段属性,尽可能减少定义字段长度,尽量把字段设置 NOT NULL, 例如’省份,性别’, 最好设置为 ENUM (2) 使用连接(JOIN)来
程序员找工作必备 PHP 基础面试题​ 程序员找工作必备 PHP 基础面试题(二) 1. 写出下面的程序输出的结果 $str=&quot;cd&quot;; $$str=&quot;abcde&quo
程序员找工作必备 PHP 基础面试题​ 程序员找工作必备 PHP 基础面试题(二)​ 程序员找工作必备 PHP 基础面试题 (三) 一、在 HTTP1.0 中,状态吗 500 的含义的是什么?如果返回
2020年PHP 面试问题(一) 2020年PHP 面试问题(二) 一.数据库三范式 第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不可再分解; 第二范式:2NF是对记录的惟一性约束,要求
1.PHP 如何实现不用自带的 cookie 函数为客户端下发 cookie。对于分布式系统,如何来保存 session 值。 这个题有点绕。考的还是 COOKIE 和 SESSION 的基础知识。服
微信公众号搜索 “ 程序精选 ” ,选择关注!
微信公众号搜 "程序精选"关注