php curl DELETE请求

function delurl($url,$data){
$data = json_encode($data);
$ch = curl_init();
curl_setopt ($ch,CURLOPT_URL,$put_url);
curl_setopt ($ch, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CUSTOMREQUEST, "DELETE");
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
$output = curl_exec($ch);
curl_close($ch);
$output = json_decode($output,true);
}

php curl PUT请求

function puturl($url,$data){
$data = json_encode($data);
$ch = curl_init(); //初始化CURL句柄
curl_setopt($ch, CURLOPT_URL, $url); //设置请求的URL
curl_setopt ($ch, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); //设为TRUE把curl_exec()结果转化为字串,而不是直接输出
curl_setopt($ch, CURLOPT_CUSTOMREQUEST,"PUT"); //设置请求方式
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);//设置提交的字符串
$output = curl_exec($ch);
curl_close($ch);
return json_decode($output,true);
}

php curl GET请求

function geturl($url){
$headerArray =array("Content-type:application/json;","Accept:application/json");
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($url,CURLOPT_HTTPHEADER,$headerArray);
$output = curl_exec($ch);
curl_close($ch);
$output = json_decode($output,true);
return $output;
}

php curl POST请求

function posturl($url,$data){
$data = json_encode($data);
$headerArray =array("Content-type:application/json;charset='utf-8'","Accept:application/json");
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,FALSE);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl,CURLOPT_HTTPHEADER,$headerArray);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($curl);
curl_close($curl);
return json_decode($output,true);
}

git commit 写的信息错误,如何修改

git commit --amend 可以对上一次的提交做修改
push -f 如果上一次的提交已经push了,那么需要加f参数覆盖服务端,不过不建议这么搞(如果其他同事已经pull了就糟了)

rename 以数字顺序批量重命名(前缀:File-)

rename -N ...01 -X -e '$_ = "File-$N"' *.jpg
-N ...01 起始文件序号,'...'表示不确定文件个数
eg: -N 001 表示从001到999
-X 保留扩展名不变

一条指令导出没有注释行的配置文件(以'#'注释为例)

sudo sh -c "grep -v '^[ ]*#' test.conf|cat -s > test.txt"
sudo sh -c 以管理员身份执行一条shell.(主要是'>'需要sudo,但是直接加会之作用于grep)
grep -v '^[ ]*#' nginx.conf.default 排除文件中以#注释的行
cat -s多个空行只显示一个空行

mongodb 数据库备份与还原

mongodump -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -o 文件存在路径 //备份
mongorestore -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 --drop 文件存在路径
--drop的意思是,先删除所有的记录,然后恢复。
如果没有用户谁,可以去掉-u和-p。
如果导出本机的数据库,可以去掉-h。
如果是默认端口,可以去掉--port。
如果想导出所有数据库,可以去掉-d。

mongodb 修改数据库名称

db.copyDatabase('old_name', 'new_name');
use old_name
db.dropDatabase();

.gitignore 忽略文件失败的问题

无效的原因是:对应的目录或者文件已经被git跟踪,此时再加入.gitignore后就无效了。
解决办法:先执行 git rm --cached 文件名,再重新加入.gitignore文件。
当然如果是文件夹,需要用 git rm -r --cached

js禁用a标签

href="javascrpt:void(0)"
最初级的都记不住

css 强制不换行 超过部分用 “... ”代替

overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
width: 210px;
width属性是必须的,值可以改变,除width属性外,其他属性顺序不能变!