1.array_merage和相加的区别
数字索引 array_merge 会完全合并成新的数组,相加的话会根据key值是否相同优先保留前者。
字符串索引, 相同key值array_merge后者取代前者,相加前者取代后者。
2 trim函数
$a = 'aabbc';
echo trim($a,'ab');
输出c
因为trim是按照字符串来匹配删除的,相当于正则里面a+b+;
3.nginx -t reload 所做的事情。。部分在使用的js,css不会改变,当未使用的时候则改变服务器js,css文件内容。平滑重启nginx。不会停服务。
4.数据库索引选择 当有索引abc和索引c的时候,查找where c=xxx用的是abc的索引,而且效率要低于用索引C,这个原理还要再查下
5.php-fpm php的进程管理器,用一个进程管理连接数之类的参数配置,如果要再启动Php进程,则在此进程下开启一个新的php进程。
6.获取当前月份最后一天。 echo date('Y-m-d', strtotime(date('Y-m-01') . ' -1 month'));
7.数据存储在redis里的意义,利用redis的数据类型的特性,更方便操作。
以前以为仅仅是因为操作的原子性,针对高并发。
8.php7的特性。
1.可以强制函数参数类型,例如整型 bool型
function aa(int a){}
2.返回值类型声明。function arraySum(array $aa) : array{}
3. ??
4.太空船操作符
$a <==>$b 相等0.小于-1 大于1
5.define支持数组
define('aa',[1,2,3]);
6.匿名函数直接实例化$app->getlogger(new class $bb implements logger){}
7.namespace可以通过use 一次性导入
use \{Class A,Class B,Class C}
8.intdiv(10,3) 3//除法取整去余
9.session_start增加数组参数可以替代php.ini的配置
session_start([ 'cache_limiter' => 'private', 'read_and_close' => true ]);
10.random_bytes() 随机字符串
random_int() 随机数字
11.可以用字符串访问静态方法
class foo
{
static $bar = 'baz';
public static function bar(){
return 222;
}
}
echo 'foo'::bar(); // 222
echo 'foo'::$bar(); // baz
exit;