2022-01-16 10:35:35    0    0    0
2022-01-15 15:25:25    0    0    0
  1. 工作分析
    • 取得了哪些成绩
    • 完成了哪些工作
    • 当前进度进展
    • 计划实施情况
  2. 亮点经验总结
    • 优化了哪些流程
    • 拓宽了哪些渠道
    • 节约了哪些成本
    • 在哪些方面提升了效率
  3. 问题分析
    • 面临了哪些挑战
    • 什么原因导致的
    • 有何改进建议
  4. 明年计划
    • 下一步安排
    • 需要的资源支持
    • 初步的评价指标
PHP Thinkcmf    2021-12-29 15:53:24    14    0    0

在app根目录添加tags.php文件

  1. <?php
  2. return array(
  3. 'app_begin' => array('cmf\behavior\VisitBehavior'),
  4. );

在vender/thinkcmf/cmf/src/behavior目录下添加VisitBehavior.php

  1. <?php
  2. namespace cmf\behavior;
  3. class VisitBehavior
  4. {
  5. // 行为扩展的执行入口必须是run
  6. public function run()
  7. {
  8. //开始统计
  9. }
  10. }
Nodejs    2021-12-24 10:26:03    5    0    0

一、 npm 运行错误:npm ERR! cb() never called!

  1. D:\ProgramFiles\nodejs>npm install
  2. npm ERR! cb() never called!
  3. npm ERR! This is an error with npm itself. Please report this error at:
  4. npm ERR! <https://npm.community>
  5. npm ERR! A complete log of this run can be found in:
  6. npm ERR! D:\ProgramFiles\nodejs\node_cache\_logs\2018-12-26T11_06_54_492Z-debug.log

二、 错误原因

  • node_module文件缓存导致
  • 设置代理导致

三、 解决方案

  • npm指令清除npm缓存:
  1. npm cache clean --force
  • 删除node_module包
  • 删除代理:
  1. npm config rm proxy
  2. npm config rm https-proxy

操作完以上步骤问题基本就解决了,如果还又错误就要详细看看是什么错误了!

PHP Laravel    2021-12-20 18:50:49    3    0    0

一、前言

最近看到社区里很多人都在讨论 Laravel-S,我也去 Github 上查看了一下该项目,其实 Laravel-S 是快速集成 Swoole 到 Laravel 或 Lumen,然后赋予它们更好的性能、更多可能性的一个胶水项目。我今天正好空闲下来,心想还是测试一波,看看性能会不会有提升呢?

二、创建 Laravel 项目

1、新建项目

  1. laravel new laravel-S

或者使用

  1. composer create-project laravel/laravel laravel-S --prefer-dist "6.2.*"

进行新建项目

2、配置好 .env 文件
配置如下:

  1. APP_NAME=laravel-s
  2. APP_ENV=local
  3. APP_KEY=base64:aQ/ykVTPt/++KGQ27oRw6Y3SeACoCyzJOHaNlSumymY=
  4. APP_DEBUG=true
  5. APP_URL=http://laravel-s.test
  6. LOG_CHANNEL=stack
  7. DB_CONNECTION=mysql
  8. DB_HOST=127.0.0.1
  9. DB_PORT=3306
  10. DB_DATABASE=laravel_s
  11. DB_USERNAME=root
  12. DB_PASSWORD=root
  13. BROADCAST_DRIVER=log
  14. CACHE_DRIVER=file
  15. QUEUE_CONNECTION=sync
  16. SESSION_DRIVER=file
  17. SESSION_LIFETIME=120
  18. REDIS_HOST=127.0.0.1
  19. REDIS_PASSWORD=null
  20. REDIS_PORT=6379
  21. MAIL_DRIVER=smtp
  22. MAIL_HOST=smtp.mailtrap.io
  23. MAIL_PORT=2525
  24. MAIL_USERNAME=null
  25. MAIL_PASSWORD=null
  26. MAIL_ENCRYPTION=null
  27. AWS_ACCESS_KEY_ID=
  28. AWS_SECRET_ACCESS_KEY=
  29. AWS_DEFAULT_REGION=us-east-1
  30. AWS_BUCKET=
  31. PUSHER_APP_ID=
  32. PUSHER_APP_K
Linux    2021-12-20 15:49:16    5    0    0

系统

重启 shutdown -r now
查看版本信息 uname -a
查看系统版本 cat /proc/version
查看centos版本 cat /etc/redhat-release
cpu核数 lscpucat /proc/cpuinfo | grep "cores" | uniq
查看磁盘使用情况 df -lf
查看磁盘目录大小 du -sk * | sort -n
显示所有运行中的进程 ps aux | less
显示进程具体信息 ps -ef|grep 进程ID
查看端口占用 netstat -tlnup | grep 9501
查看服务器自身前十的IP被连接数 netstat -ntu | awk '{print $4}' | sort | uniq -c | sort -n | tail -10
内存使用 free -hcat /proc/meminfo
当前目录文件数 ls -l|grep "^-"| wc -l
带宽占用 iftop
批量杀死进程 ps -ef | grep 进程名 | grep -v grep | awk '{print "kill "$2}' | sh

文件

远程拷贝文件:#scp -r /home/administrator/news.txt root@192.168.6.129:/etc/squid 上传文件和文件夹区别就在参数 -r
远程文件/文件夹下载: #scp -r root@192.168.6.129:/etc/squid /home/administrator/news.txt
压缩文件夹:tar -zcvf /usr/local/www/laraveladmin.tar.gz /usr/local/www/laraveladmin
压缩文件:gzip -c test.txt > /root/test.gz

用户

更改权限:chmod -R 777 /home/user
分配权限:chown -R hadoop:hadoop /usr/hadoop/
删除文件夹实例:rm -rf /var/log/httpd/ac

VUE    2021-12-20 11:00:12    3    0    0

一、为什么要配置环境变量

在公司,一个项目一般会有开发版本、测试版本、灰度版本和线上版本,每个版本会对应相同或不同的数据库、API地址。为了方便管理,我们通常做成配置文件的形式,根据不同的环境,加载不同的文件。如果手动修改代码中加载配置文件的路径也可以,但是太麻烦,最重要的是很low(无形装逼,最为致命)。

二、实现原理

采用nodejs顶层对象中的process.env(进程环境,返回一个包含用户环境信息的对象。)属性,根据各个环境的配置文件区分和切换环境

三、具体操作(以vue项目为例)

1、安装依赖

  1. npm install process

2、在根目录新增五个文件(根据自身情况增减), .env 和 .env.dev 和 .env.pre和 .env.prod和 .env.sit和 .env.uat,分别为默认配置、本地开发配置、灰度配置、生产配置、测试配置1、测试配置2,(ps: VUE_APP是统一标志,后面的拓展名可以任取)

  .env

  1. VUE_APP_TITLE='dev'

  .dev

  1. NODE_ENV = 'development'
  2. VUE_APP_TITLE = 'development'
  3. /*请求接口地址*/
  4. VUE_APP_INTERFACE_URL="https://xxx"
  5. /*首页地址*/
  6. VUE_APP_URL="http://xxx"
  7. /*proxy代理地址*/
  8. VUE_APP_PROXYURL='http://xxx'

  .prod

  1. NODE_ENV = production
  2. VUE_APP_TITLE = 'prod'
  3. /*请求接口地址*/
  4. VUE_APP_INTERFACE_URL="https://xxx"
  5. /*首页地址*/
  6. VUE_APP_URL="http://xxx"

3、设置项目启动时默认的环境

只需要在项目启动命令后面修改需要的环境就行,例如我这是npm run dev,把--mode dev改成--mode uat就行了
package.json

  1. "scripts": {
  2. "dev": "vue-cli-service serve --mode
VUE    2021-12-19 17:00:54    7    0    0

前言

我们将会选择使用一些vue周边的库

  1. 使用node.js后台,了解到如何获取数据
  2. 实现单页路由
  3. 实现HTTP请求我们的node
  4. 单项数据流
  5. 使用.vue文件进行开发

最终我们将会构建出一个小demo,不废话,直接上图。
Vue构建单页应用最佳实战_

安装

  1. 我们将会使用webpack去为我们的模块打包,预处理,热加载。如果你对webpack不熟悉,它就是可以帮助我们把多个js文件打包为1个入口文件,并且可以达到按需加载。这就意味着,我们不用担心由于使用太多的组件,导致了过多的HTTP请求,这是非常有益于产品体验的。但我们并不只是为了这个而使用webpack,我们需要用webpack去编译.vue文件,如果没有使用一个loader去转换我们.vue文件里的style、js和html,那么浏览器就无法识别。

  2. 模块热加载是webpack的一个非常碉堡的特性,将会为我们的单页应用带来极大的便利。
    通常来说,当我们修改了代码刷新页面,那应用里的所有状态就都没有了。这对于开发一个单页应用来说是非常痛苦的,因为需要重新在跑一遍流程。如果有模块热加载,当你修改了代码,你的代码会直接修改,页面并不会刷新,所以状态也会被保留。

  3. Vue也为我们提供了CSS预处理,所以我们可以选择在.vue文件里写LESS或者SASS去代替原生CSS。

  4. 我们过去通常需要使用npm下载一堆的依赖,但是现在我们可以选择Vue-cli。这是一个vue生态系统中一个伟大创举。这意味着我们不需要手动构建我们的项目,而它就可以很快地为我们生成。

首先,安装vue-cli。(确保你有node和npm)

  1. npm i -g vue-cli

然后创建一个webpack项目并且下载依赖

  1. vue init webpack vue-time-tracker
  2. cd vue-time-tracker
  3. npm i

接着使用 npm run dev 在热加载中运行我们的应用

这一行命令代表着它会去找到package.json的scripts对象,执行node bulid/dev-server.js。在这文件里,配置了Webpack,会让它去编译项目文件,并且运行服务器,我们在local

PHP    2021-12-19 12:04:11    6    0    0

一个新的返回值类型void被引入。 返回值声明为 void 类型的方法要么干脆省去 return 语句,要么使用一个空的 return 语句。 对于 void 函数来说,NULL 不是一个合法的返回值。
返回的类型还有 void,定义返回类型为 void 的函数不能有返回值,即使返回 null 也不行。

void 函数可以省去 return 语句,或者使用一个空的 return 语句。

  1. <?php
  2. function swap(&$left, &$right) : void
  3. {
  4. if ($left === $right) {
  5. return www.xiaohonghuaw.com;
  6. }
  7. $tmp = $left;
  8. $left = $right;
  9. $right = $tmp;
  10. }
  11. $a = 1;
  12. $b = 2;
  13. var_dump(swap($a, $b), $a, $b);

以上实例输出结果:

  1. null
  2. int(2)
  3. int(1)

————————————————
版权声明:本文为CSDN博主「gzxiaomei」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/gzxiaomei/article/details/108822479

Composer    2021-12-19 11:49:01    8    0    0

中国全量镜像

方法一: 修改 composer 的全局配置文件(推荐方式)

打开命令行窗口(windows用户)或控制台(Linux、Mac 用户)并执行如下命令:

  1. composer config -g repo.packagist composer https://packagist.phpcomposer.com

方法二: 修改当前项目的 composer.json 配置文件:

打开命令行窗口(windows用户)或控制台(Linux、Mac 用户),进入你的项目的根目录(也就是 composer.json 文件所在目录),执行如下命令:

  1. composer config repo.packagist composer https://packagist.phpcomposer.com

另外一个镜像(已停止)

设置全局使用镜像:

  1. composer config -g repo.packagist composer https://packagist.laravel-china.org

取消镜像:

  1. composer config -g --unset repos.packagist

其他

  1. composer config -g repo.packagist composer https://mirrors.aliyun.com/composer
  2. composer config -g repo.packagist composer https://php.cnpkg.org
  3. composer config -g repo.packagist composer https://packagist.phpcomposer.com
  4. composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer

内存溢出解决办法

  1. COMPOSER_MEMORY_LIMIT=-1
  2. composer require "laravel/horizon:~3.1"

或者

  1. php -d memory_li
7/12