学习的过程中,发现ORM的存进数据库的时间戳,再取出时,是本地时间相差了少了八个小时

在 getDateFormat() 函数中,设置 date_default_timezone_set('PRC'); 与 ini_set('date.timezone', 'Asia/Shanghai'); 均无效

查看手册知晓,在 config/app.php 里的 'timezone' 参数

'timezone' => 'PRC' // 或者 Asia/Shanghai ,时区设置成我大天朝就好了

composer是php的依赖管理工具,与前端的npm包管理差不多

今天就是来 在linux上如何安装composer(windows的一路下一步,没毛病)

setp0

检查一下php版本号,可以显示版本号才能继续下面的操作

php -v

setp1

首先准备好composer-setup.php

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

setp2

在 shell 界面输入(如要全局安装请加上 --install-dir=bin --filename=composer)全局安装可以忽略后面所有操作

php composer-setup.php

setp3

这步操作对普通用户使用都有效,当然root也可以

mv composer.phar /usr/local/bin/composer

setp4

这个时候就可以查看你的composer版本号了

composer -v

撸了台hostker的,装的centos7.3,系统装完了一进去用netstat -antp喵一下网络连接的

发现netstat输出-bash: netstat: command not found

查了一下,发现是RHEL7准备废弃这几条命令了,废弃就废弃吧,我看看替换的新命令是咋样的

ip,ss

这又是要记参数的节奏呀!

好吧,还算简洁的,早晚都会用的,现在先熟悉用了。


ifconfig替换

ip addr

传输状态(-s 为详细显示)

ip link

netstat替换

ss

netstat -ant(-antp的输出个人看的不友好)

ss -ant

netstat -anu

ss -anu

traceroute/traceroute6替换

tracepath

route替换(-6 为IPv6)

ip route

ifconfig eth0 up/down替换

ip l set eth0 up/down

不知道大家都碰到过没,网易云里有部分人对民谣的概念很片面,思想局限在弹着吉他唱nmp上?

我来到凯尔特曲风的歌曲下面,简直是一股清流,怎么能有这么棒的歌曲,每个音符的跳跃感,啊♂,真是棒棒哒

国内的民谣环境里,再来听听,总觉得是一群人在无病呻吟,传达给你的不是颓废就是颓废(?都不知道用什么词了)

当然,像花粥,燕池这类有着鲜明特点的歌手,另外再说了

其实我本来就挺喜欢苏格兰和爱尔兰他们演奏的曲风,这类的民谣听得不是比国内一些以吉他为主的民谣有趣多了嘛。

维基:(凯尔特 [中文])

如果有新手学习 nodejs,获取url post传回的参数时,会发生和我一样的问题,今天就来解决这个小麻烦

node.js不像php这种老牌后端语言有特定的获取外部参数的做法,毕竟是个新生力量,希望后来的版本能够更加便捷高效


//正常的获取值
app.get('/', (req, res) => {
  console.log(req.query);
  res.send('完成');
});
app.post('/', (req, res) => {
  console.log(req.body);
  res.send('完成');
});

正常输出的话,你的预想是这样的...

// GET请求
{
  name: '冯小贤',
  age: '18'
}
完成

// POST请求
{
  name: '冯小贤',
  age: '18'
}
完成

然而并不是!!!

// 两次的输出会是这样!!!
{ }
undefined

这是因为我们这里缺少一个模块,express的中间件 body-parser

官方说明
Node.js body parsing middleware.
Parse incoming request bodies in a middleware before your handlers, available under the req.body property.

基本就是说,解析客户端请求的body中的内容,JSON编码处理和url编码处理


接下来我们就来安装 body-parser

// 安装 body-parser
npm install body-parser

// 导入 app.js
var bodyParser = require('body-parser');
app.use(bodyParser());

//这样就可以使用 req.body 来获取 post 传递来的值了
app.post('/', (req, res) => {
  console.log(req.body);
  res.send('完成');
});

// json就是用  app.use(bodyParser.json())

学习没有动力,那吃枣是?的,学习 nodejs 的过程中,我来给大家一点提神醒脑的?

这里我是用了 cnodejs社区 最简单的爬虫小教程做基础改鳝,完成的


// 站点环境
node v6.10.2
npm v3.10.10
// 用到的魔模块
require('superagent');
require('cheerio');
require('express');
require('ejs');
require('http');
require('fs');
require('path');

初始化项目
npm init
安装模块使用
npm install 模块名 --save
启动 app.js
node app.js
你就可以愉♂快的玩耍了(文件下载链接见文章末尾)

如不知道如何使用 nodejs
Linux玩家可以看 我的这篇文章;Windows玩家可以直接去官网下载 .msi ,下一步下一步安装 直达车


基本的爬取思路

  1. 页面的分页按钮,抓到在此页出现的所有小姐姐的页面链接,存储下来
  2. 使用 eventproxy 来并发访问每个小姐姐的页面
  3. 访问的过程中,使用 cheerio(类似jquery的模块) 来匹配我们需要的图片地址 ,记录找到的所有图片地址
  4. http 去请求每张图片地址,保存二进制数据流
  5. fs将二进制数据流,输出成图片文件,文件名从原始地址提取出来
  6. 保存至 文件夹

这里我怕由于请求过于庞大,使用 express 构建静态页面提供 查询下载,降低爬取的站点被爬死的可能性

下载地址:xjj.zip

基础: 安装

服务器信息
1.System

CentOS release 6.9 (Final)
Kernel r on an m

2.Configuration

Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz
1G,1核 (阿里拉基云)

step 1

这里我使用的是我大淘宝源


# 进入存放目录,我这里放在 /home/nodejs 下,放哪里看你喜好辣
cd /home/nodejs
# 下载 nodejs 二进制包
wget https://npm.taobao.org/mirrors/node/v6.10.2/node-v6.10.2-linux-x86.tar.gz
# 解压包
tar -xzvf node-v6.10.2-linux-x86.tar.gz
# 得到一个文件夹 node-v6.10.2-linux-x86,进入这个目录下的 bin 目录
cd node-v6.10.2-linux-x86/bin
# 确认下载的 nodejs 的版本无误
./node -v

step 2

现在你只能在这个目录下操作 node 呀,所以我们要加到 用户环境里


# 查看一下当前所在的目录
pwd
# 添加软连接到 /usr/local/bin
ln -s /home/nodejs/node-v6.10.2-linux-x86/bin/node /usr/local/bin/node
ln -s /home/nodejs/node-v6.10.2-linux-x86/bin/npm /usr/local/bin/npm




- 阅读剩余部分 -