拥有面试标签的文章

php基础知识

php基础部分PHP 输出文本的基础指令:echo 和 printecho和print和var_dump的区别echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用)echo 输出一个或者多个字符串。print 只能打印出简单类型变量的值(如int,string)print_r 可以打印出复杂类型变量的值(如数组,...
阅读全文

Mysql锁的使用及事务控制基本命令总结

lock table A read/write获得表 A 的 READ/WRITE 锁定unlock tables释放所有表锁事务控制MySQL 通过 SET AUTOCOMMIT、START TRANSACTION、COMMIT 和 ROLLBACK 等语句支持本地事务,具体语法如下。START TRANSACTION | BEGIN COMMIT ...
阅读全文

PHP OOP 面向对象简说

PHP的面向对象简说 面向对象中的最重要的2个概念 类:(类是一种思想上的或者未实现的东西)所有描述事物的概念就是类,所有事物的操作流程也是一个类 对象:所有事物的操作流程的实施过程就是一个对象 类和对象的组成成分:一种是用于对特征的描述 成员属性一种是对其功能的描述 成员方法 类的书写规则 1.文件名a) 函数的文件名 xxx.fun...
阅读全文

PHP处理高并发的一些思路(转载

涉及抢购、秒杀、抽奖、抢票等活动时,为了避免超卖,那么库存数量是有限的,但是如果同时下单人数超过了库存数量,就会导致商品超卖问题。那么我们怎么来解决这个问题呢,我的思路如下(伪代码): sql1:查询商品库存if(库存数量 0){ //生成订单... sql2:同时库存1}当没有并发时,上面的流程看起来是再正常不过了,假设同时两个人下单,而库存只有1个了,...
阅读全文

如何处理PHP内存溢出导致的事故

1. 应当尽可能减少静态变量的使用,在需要数据重用时,可以考虑使用引用(&)。2. 数据库操作完成后,要马上关闭连接;3. 一个对象使用完,要及时调用析构函数(__destruct())4. 用过的变量及时销毁(unset())掉5. 可以使用memory_get_usage()函数,获取当前占用内存 根据当前使用的内存来调整程序6. unset()函数只能...
阅读全文

收集遇到的面试题(持续更新)

收集从18年3月份开始遇到过的面试问题,共勉
阅读全文

Mysql索引失效场景

1.WHERE字句的查询条件里有不等于号(WHERE column!=…),MYSQL将无法使用索引2.类似地,如果WHERE字句的查询条件里使用了函数(如:WHERE DAY(column)=…),MYSQL将无法使用索引3.在JOIN操作中(需要从多个数据表提取数据时),MYSQL只有在主键和外键的数据类型相同时才能使用索引,否则即使建立了索引也不会使用4.如果WHERE子...
阅读全文

MySql 创建索引原则

为了使索引的使用效率更高,在创建索引时,必须考虑在哪些字段上创建索引和创建什么类型的索引。本小节将向读者介绍一些索引的设计原则。 1.选择唯一性索引 唯一性索引的值是唯一的,可以更快速的通过该索引来确定某条记录。例如,学生表中学号是具有唯一性的字段。为该字段建立唯一性索引可以很快的确定某个学生的信息。如果使用姓名的话,可能存在同名现象,从而降低查询速度。 2.为经常需要排序...
阅读全文

MySQL的四种事务隔离级别

一、事务的基本要素(ACID)  1、原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。事务执行过程中出错,会回滚到事务开始前的状态,所有的操作就像没有发生一样。也就是说事务是一个不可分割的整体,就像化学中学过的原子,是物质构成的基本单位。   2、一致性(Consistency):事务开始前和结束后,数据库的完整性约束没有被破坏 ...
阅读全文

MySQL中MyISAM与InnoDB区别及选择

InnoDB:支持事务处理等不加锁读取支持外键支持行锁不支持FULLTEXT类型的索引不保存表的具体行数,扫描表来计算有多少行DELETE 表时,是一行一行的删除InnoDB 把数据和索引存放在表空间里面跨平台可直接拷贝使用InnoDB中必须包含AUTO_INCREMENT类型字段的索引表格很难被压缩MyISAM:不支持事务,回滚将造成不完全...
阅读全文