Day: 2020年12月5日

PHP8新特性系列:构造器属性提升使用及注意事项

本篇主要说下PHP8构造器属性提升的用法,这个特性对于一些需要在构造器中设置或初始化一些类属性的时候非常有用(包括publicprotectedprivate),比如在PHP7中你可以这样定义一个类的属性,然后在构造方法中传值。

class Point {
    public int $x;
    private string $y;

    public function __construct(int $x = 0, string $y='') {
        $this->x = $x;
    

聊一聊前端性能优化 CRP

什么是 CRP?

CRP又称关键渲染路径,引用MDN对它的解释:

关键渲染路径是指浏览器通过把 HTML、CSS 和 JavaScript 转化成屏幕上的像素的步骤顺序。优化关键渲染路径可以提高渲染性能。关键渲染路径包含了 Document Object Model (DOM),CSS Object Model (CSSOM),渲染树和布局。

优化关键渲染路径可以提升首屏渲染时间。理解和优化关键渲染路径对于确保回流和重绘可以每秒 60 帧、确保高性能的用户交互和避免无意义渲染至关重要。…

                

Linux环境变量配置全攻略

Linux环境变量配置

在自定义安装软件的时候,经常需要配置环境变量,下面列举出各种对环境变量的配置方法。

下面所有例子的环境说明如下:

  • 系统:Ubuntu 14.0
  • 用户名:uusama
  • 需要配置MySQL环境变量路径:/home/uusama/mysql/bin

Linux读取环境变量

读取环境变量的方法:

    • export命令显示当前系统定义的所有环境变量
    

HTTP/2服务器推送已死

HTTP/2附带的热门功能之一是PUSH帧。主要思想是,如果服务器可以预测客户端可能要发出的请求,则服务器可以抢先向客户端发送请求/响应对并预热其缓存。

这是我很久以来一直很感兴趣的功能。我认为API使缓存无效和预热缓存,消除对复合请求的需求(我认为这是一种技巧,尽管有时是必要的)非常有用。

为了帮助推进这个想法,我编写Internet Draft,以使API客户端告诉服务器他们希望推送哪些资源,我构建了具有一流,深度集成的Push支持并添加了支持的Node.js框架。为Prefer-PushKetting。…