前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >程序员面试必备PHP基础面试题 – 第二十一天

程序员面试必备PHP基础面试题 – 第二十一天

作者头像
PHP学习网
发布2022-08-03 14:26:04
5760
发布2022-08-03 14:26:04
举报
文章被收录于专栏:PHP学习网PHP学习网

写在前面,今天是PHP基础面试题的最后一天,接下来我将整理中高级的面试题,这部分因为之前没准备好,而且工作比较忙,有可能做不到一天一更,还望大家担待。

一、解释一下PHP的类中:protect,public,private,interface,abstract,final,static的含义

Protected:保护的 在本类和子类中可以访问 在外部不可以访问

Public:公有的 在本类 子类 外部都可以访问

Private:私有的 在本类中可以访问 子类 外部都不可以访问

Interface: 声明一个接口时的关键字

Abstract:声明一个抽象类和抽象方法时的关键字

Final:使用final声明的方法是最终的,子类无法继承和重载

Static:定义静态方法和静态属性的关键字

二、解释:左连接,右连接,内连接,索引

內连接仅选出两张表中互相匹配的记录.因此,这会导致有时我们需要的记录没有包含进来。内部连接是两个表中都必须有连接字段的对应值的记录,数据才能检索出来。

左连接和右连接都是外部连接,也就是区别于内部连接,它对不满足连接条件的行并不是象内部连接一样将数据完全过滤掉,而是保留一部分数据,行数不会减少。

左连接是只要左边表中有记录,数据就能检索出来,而右边有的记录必要在左边表中有的记录才能被检索出来

右连接是只要右边表中有记录,数据就能检索出来;

全连接则会回返回两个表中的所有记录

三、如何进行防SQL注入

1、过滤掉一些常见的数据库操作关键字:select,insert,update,delete,and,*等或者通过系统函数:addslashes(需要被过滤的内容)来进行过滤。

2、在PHP配置文件中Register_globals=off;设置为关闭状态 //作用将注册全局变量关闭。比如:接收POST表单的值使用_POST['user'],如果将register_globals=on;直接使用user可以接收表单的值。

3、SQL语句书写的时候尽量不要省略小引号(tab键上面那个)和单引号

4、提高数据库命名技巧,对于一些重要的字段根据程序的特点命名,取不易被猜到的

5、对于常用的方法加以封装,避免直接暴漏SQL语句

6、开启PHP安全模式Safe_mode=on;

7、打开magic_quotes_gpc来防止SQL注入

  Magic_quotes_gpc=off;默认是关闭的,它打开后将自动把用户提交的sql语句的查询进行转换,把'转为',这对防止sql注入有重大作用。

  因此开启:magic_quotes_gpc=on;

8、控制错误信息,关闭错误提示信息,将错误信息写到系统日志。

9、使用mysqli或pdo预处理。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PHP学习网 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、解释一下PHP的类中:protect,public,private,interface,abstract,final,static的含义
  • 二、解释:左连接,右连接,内连接,索引
  • 三、如何进行防SQL注入
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档