linux
2018-04-12 12:38:34
1439
##### 1. 下载gcc-4.8 源码包
`wget -c https://ftp.gnu.org/gnu/gcc/gcc-4.8.5/gcc-4.8.5.tar.gz`
##### 2. 解压源码包
`tar -zxvf gcc-4.8.5.tar.gz`
##### 3. 下载依赖库(自动步骤)
```bash
cd gcc-4.8.5/contrib
./download_prerequisites
```
##### 4. 下载依赖库(手动步骤)
```bash
cd gcc-4.8.5/cont
Mac OS
2018-04-11 11:16:02
1258
此方法不一定是最优的,但是适合自己的就是最好的
保证php安装完成的前提下
```bash
wget -c http://www.ijg.org/files/jpegsrc.v8d.tar.gz
tar xzf jpegsrc.v8d.tar.gz
cd jpeg-8d
./configure
make
cp ./.libs/libjpeg.8.dylib /usr/local/lib/libjpeg.8.dylib #我的提示是/usr/local/lib目录下缺少文件,所以cp到这里,各位按需cp
#cp
web开发
2018-04-10 20:12:26
2762
git会将文件的可执行权限加入版本控制,其他权限,例如用户、属组、可读、可写,不会加入版本控制。
解决办法:
```bash
git config core.filemode false
```
linux
2018-04-09 19:15:55
1318
`yum install --downloadonly`下载而不安装rpm包
当你在yum安装某个插件的时候,如果有冲突,此时,可以将rpm先下载下来,然后手动强制安装即可。
```sh
yum install --downloadonly
#默认情况下,下载的RPM包会保存在:/var/cache/yum/x86_64/[centos|fedora-version]/[repository]/packages,[repository]表示下载包的来源仓库的名称(例如:base、fedora、updates)
linux
2018-04-08 18:59:39
1037
###### 这里的配置是采取单向同步,采取 主web机 向 从web机 推送代码,如要双向同步,请自行配置
##### 安装配置 rsync (所有服务器都需安装)
服务器:host1、host2 ···
`yum install rsync -y`
编辑 rsyncd.conf 配置文件,如果没有则创建一个,host1可以不配置此文件
`vim /etc/rsyncd.conf`
```bash
#rsync通用配置文件,配置的注释不要写在配置后面,否则会有问题
#文件同步后,用户组变为www
u
linux
2018-04-07 18:04:19
1326
sh加密常用两种命令,gzexe的原理是压缩脚本,脚本被执行的时候,该文件会自动解压然后继续执行,和使用一般的执行文件相同。shc是一个专业的加密shell脚本的工具,它的原理是把shell脚本转换为一个可执行的二进制文件。
shc加密
```sh
wget http://www.datsi.fi.upm.es/%7Efrosal/sources/shc-3.8.7.tgz
tar -zxvf shc-3.8.7.tgz
cd shc-3.8.7.tgz
make test
mkdir -p /usr/loca
web开发
2018-04-06 17:20:26
1225
迭代器模式通俗的讲是遍历集合的成熟模式,迭代器模式的关键是将遍历集合的任务交给一个叫做迭代器的对象,它的工作时遍历并选择序列中的对象,而客户端程序员不必知道或关心该集合序列底层的结构。它的作用是使所有复杂数据结构的组件都可以使用循环来访问。
对象要实现迭代,需要使这个类实现 Iterator(SPL standard php library标准库提供),这是一个迭代器接口,实现该接口,必须实现以下方法:
current(),该函数返回当前数据项
key(),该函数返回当前数据项的键或者该项在列表中的位置
linux
2018-04-05 16:10:45
1337
tmpwatch指令可删除不必要的暂存文件,可以设置文件超期时间,单位以小时计算。
语法
tmpwatch [-afqv][--test][超期时间][目录...]
参数
-a或--all 删除任何类型的文件。
-f或--force 强制删除文件或目录,其效果类似rm指令的"-f"参数。
-q或--quiet 不显示指令执行过程。
-v或--verbose 详细显示指令执行过程。
--test 仅作测试,并不真的删除文件或目录。
实例
tmpwatch --test 24 /tmp/
web开发
2018-04-04 16:01:43
1192
默认的PHP的echo、print之类的输出会被缓存,当缓存达到特定的大小或脚本执行结束,或强行刷新缓冲区才会发送到浏览器客户端。
`php.ini`的`outputing_buffer`字段默认是4096,表示缓存的大小,如果大于该值则会像浏览器客户端输出。但是我发现该值不管怎么改(`ini_get('outputing_buffer')`值始终为0),都不会影响输出,即不会有缓存,这里就不去研究为什么了,这里主要想说的是ob相关的函数。
有时我们需要对输出进行严格控制,比如我要输出100k的数据,而且是一次
web开发
2018-04-03 18:15:57
1193
string setlocale ( int $category , string $locale [, string $... ] )
设置本地地区信息(地区信息是针对一个地理区域的语言、货币、时间以及其他信息。)
$category可用的常量(这些常量都是php内置,结果都是int型):
LC_ALL - 包括下面的所有选项
LC_COLLATE -排序次序
LC_CTYPE - 字符类别及转换(例如所有字符大写或小写)
LC_MESSAGES - 系统消息格式
LC_MONETARY - 货