人生3大行为模式

  1. 多巴胺模式: 吃、逛、买、看

  2. 恐惧驱动模式: 没有办法放手做事,瞻前顾后。

  3. 创造力模式: 关注点不在内在的状态,也不是去寻找快乐,而是想到要做成某事,关注点集中于当下正在做的事情。透过做一件事,将自己的注意力,从内心的小毛病小纠结转移到事情本身。

nginx相关

关闭 nginx nginx -s stop

重新加载 nginx -s relaod

  1. 全局配置

    影响 nginx 服务器整体运行的配置指令

    eg:worker_processes 1; // 越大 并发越大

  2. event 块

    nginx 服务器与用户的网络连接

PHP webhook 部署码云

有一个仓库(可以自建,也可以用线上的),将开发者本地的代码每次修改管理起来,可以查看修改记录,回滚等,常用的管理工具有svn 、git等,主流 git。

简要流程:

  1. 修改代码
  2. 提交修改到仓库

当然反过来也可以: 从仓库下载代码到本地  svn: 叫检出( svn checkout path); git 叫 拉取(git pull)

本地修改的代码要上传服务器,才能生效

composer

composer require “mk-j/php_xlsxwriter” –no-update

“require”: { “vendor/package”: “1.3.2”, // exactly 1.3.2

// >, <, >=, <= | specify upper / lower bounds
"vendor/package": ">=1.3.2", // anything above or equal to 1.3.2
"vendor/package": "<1.3.2", // anything below 1.3.2

// * | wildcard
"vendor/package": "1.3.*", // >=1.3.0 <1.4.0

// ~ | allows last digit specified to go up
"vendor/package": "~1.3.2", // >=1.3.2 <1.4.0
"vendor/package": "~1.3", // >=1.3.0 <2.0.0

// ^ | doesn't allow breaking changes (major version fixed - following semver)
"vendor/package": "^1.3.2", // >=1.3.2 <2.0.0
"vendor/package": "^0.3.2", // >=0.3.2 <0.4.0 // except if major version is 0

}

Mysql 范式 事务 锁

  1. 非标准化形式: 主键不能重复;不出现重复记录

  2. 字段原子性,不能再分

反例: 联系方式  =》(电话,邮箱)

  1. 不能存在部分依赖。 随着主键值的变化,其它列名也必须随之而变化,如果主键是几个列名的组合,其它列名(副键)必须同时被这几个列名影响,少一个的话,不行

反例:   组件id,价格,供应商id,供应商名称,供应商地址。 同一个组件有可能由不同的供应商提供,故 组件 id 和 供应商 id 组成主键, 价格 和 主键  完全依赖; 供应商名称和地址 只依赖于 供应商 id, 部分依赖

PHP 和 Nginx 通信

启动 php-fpm,通信模式, TCP socket, Unix scoket。

PHP-FPM 启动两种进程, master:监控端口、分配任务,管理 worker 进程, worker: 就是 php 的cgi 程序,解释和编译执行 php 脚本。

PHP 基础

  1. 当 $a 是以下 值时候 (boolean) $a  为假 false:
  • 未设置的变量
  • var $a;  未初始化 $a 的值
  • $a = null;
  • false
  • 0
  • ''
  • ‘0’
  • []
  1. 以上值 empty() 是均为 true 。
  2. isset() 检测 一个变量设置了,且不为 null ,所以仅仅前 3 条 为 false 。
  3. is_null() 正好与 isset() 相反, 仅仅 前 3 条 为 true 。
  4. gettype() 前3条 ,均返回 null,即 类型 未知。

相同点 都是利用回调函数对数组中每个元素进行操作。