PHP 超全局变量有哪些(8 个)?
$_GET,$_POST,$_REQUEST,$_FILES,$_COOKIE,$_SESSION,$_SERVER,$_ENV,外加预定义变量 $GLOBALS。
PHP 变量作用域有哪些?
局部变量:函数内部,对应变量为局部变量;
全局变量:不在函数内部,函数外部和代码块中定义的变量是全局变量;
超全局变量:所有代码范围。
如何在局部作用域使用全局变量?
使用 global 声明一个要使用的全部变量的同名局部变量;
通过 $GLOBALS 预定义变量访问全局变量。
两者的区别:
$GLOBALS['var'] 是外部全局变量 $var 本身;
global $var 是外部 $var 的同名引用或指针。
empty 和 isset 有什么区别?
empty:非空、非零则返回 FALSE,''
、0
、'0'
、NULL
、FALSE
、array()
、未定义
返回 TRUE;
isset:变量存在(非 NULL)则返回 TRUE,否则返回 FALSE(包括未定义)。
PHP 常用的字符转义函数有哪些?
htmlspecialchars - htmlspecialchars-decode:将一些预定义的字符转换为HTML实体(&
、"
、<
、>
、'
[指定 ENV_QUOTES 时]);
addslashes - stripslashes:在指定的预定义字符前添加反斜杠('
、"
、\
、NULL
)。
了解的 Web 攻击有哪些,以及对应的防御措施?
XSS(Cross-site scripting)跨站脚本攻击:进行转义处理;
CSRF(Cross-site request forgery)跨站请求伪造攻击:网站前端页面加入验证信息(验证码、token、referer);
点击劫持攻击:禁止 iframe 内嵌,其他辅助手段(验证码)。
什么是 MVC?
API 接口开发[身份认证]?
用过缓存吗,Memcached 和 Redis 有什么区别?
HTTP 请求头/响应头参数有哪些?
请求头: Accept/Accept-Encoding/Cache-Control/Cookie/Host/Referer/User-Agent 等;
响应头: Cache-Control/Content-Encoding/Content-Length/Content-Type/Date/Server 等。
常用的 HTTP 状态码及其含义?
1xx:请求更多信息;
2xx:成功;
3xx:已转移;
4xx:客户端问题;
5xx:服务器问题。
HTTP 中 POST、GET、PUT、DELETE 方式的区别?
了解的商城系统有哪些?
抢购、秒杀的商品超卖怎么处理的?
微信支付的流程?
MyISAM 和 InnoDB 的区别?
MyISAM:不支持事务,表级锁;
InnoDB:事务级存储引擎,完美支持行级锁,事务 ACID 特性。
MYSQL 数据库的数据类型有哪些?
整型:tinyint smallint mediumint int bigint int(n)不代表长度,配合 zerofill 使用;
浮点型:float double decimal;
字符串:char varchar 两者的区别;
时间日期:datetime year date time timestamp。
存储过程和事务处理?
创建一个 MySQL 用户及授予数据库相关权限命令?
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
GRANT privileges ON databasename.tablename TO 'username'@'host';
数据库优化可以从哪几个方面考虑?
Linux 常用命令?
Linux 定时任务?
Linux 编辑文件命令是什么,怎么保存退出?