[转] EPEL 快速安装 Nginx + PHP-FPM + MySQL

现在,我们可以快速全自动搞定 CentOS + Nginx + PHP-FPM + MySQL 的安装了。

这个可比网上流传的什么一键安装包要好得多,强烈推荐此法安装,适合所有菜鸟和高手
这个装完已经包含 php 的一些常用扩展:PDO, eAccelerator, memcache, tidy 等等

先新建一个 repo:

vim /etc/yum.repos.d/Centos-Base-21andy.repo

放入如下内容:

[21Andy.com]
name=21Andy.com Packages for Enterprise Linux 5 - $basearch
baseurl=http://www.21andy.com/centos/5/$basearch/
enabled=1
gpgcheck=0
protect=1

继续阅读“[转] EPEL 快速安装 Nginx + PHP-FPM + MySQL”

Windows 下快速配置 nginx + php 5.3

一、下载最新的稳定的 nginx 的版本:http://nginx.org/

解压到 D:\nginx,修改配置文件 D:\nginx\conf\nginx.conf,找到:

#location ~ \.php$ {
#    root           html;
#    fastcgi_pass   127.0.0.1:9000;
#    fastcgi_index  index.php;
#    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
#    include        fastcgi_params;
#}

修改为:

location ~ \.php$ {
    root           html;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  html$fastcgi_script_name;
    include        fastcgi_params;
}

继续阅读“Windows 下快速配置 nginx + php 5.3”

PHP 5.3 版本选择

最近在 PHP 官网上看到又有新版的 PHP 下载了,于是上去找找 For Windows 的版本,可是一看确傻眼了,一共给了四个版本,VC9 x86 Non Thread Safe、VC9 x86 Thread Safe、VC6 x86 Non Thread Safe、VC6 x86 Thread Safe,这让我这个菜鸟头疼啊,还好 PHP 官网提供下载的地方左边有个英文 choose 我看懂了,我估摸着就是如何来选择版本的意思吧,于是开始查字典及上网查找,终于看明白了具体意思,拿来做个备忘先。

一、如何选择 PHP 5.3 的 VC9 版本和 VC6 版本

VC6 版本是使用 Visual Studio 6 编译器编译的,如果你的 PHP 是用 Apache 来架设的,那你就选择 VC6 版本。

VC9 版本是使用 Visual Studio 2008 编译器编译的,如果你的 PHP 是用 IIS 来架设的,那你就选择 VC9 版本。

二、如何选择 PHP 5.3 的 Thread Safe 和 Non Thread Safe 版本

先从字面意思上理解,Thread Safe 是线程安全,执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的 CGI 执行方式而耗尽系统资源。Non Thread Safe 是非线程安全,在执行时不进行线程(Thread)安全检查。
继续阅读“PHP 5.3 版本选择”

[分享] 一些 PHP tips

先说几个比较重要的:

数据变量在用foreach前一定要先验证是否是数组类型,否则是个Error!

所有的返回值都要判断,不要认为它一定会如你所愿返回正确的值。

1.如果在写PHP的一个方法的时候能被静态,那就声明他为静态的,速度可提高1/4; //但要注意,static变量是文件被引用的时候就分配内存,而不是被调用时;
2.在PHP的输出语句中,echo的效率高于 print,因为echo没有返回值,print返回一个整型;
3.在循环之前设置循环的最大次数,而非在在循环中;
4.销毁变量去释放 内存,特别是大的数组;
5.避免使用像__get, _set, __autoload等魔术方法;
6.requiere_once() 比较耗资源;
7.在includes和requires中使用绝对路径,这样在分析路径花的时间更少;
8.如果你需要得sexinsex 到脚本执行时的时间,$_SERVER[‘REQUSET_TIME’]优于time();
9.能使用字符处理函数的,尽量用他们,因为效率高于 正则;
10.str_replace字符替换比正则替换preg_replace快,但strtr比str_replace又快1/4;
继续阅读“[分享] 一些 PHP tips”

Coolcode 3.4 Gesion 修改版

WordPress 代码高亮插件,国人制作,不过 3.4 中有几个 Bug 存在,而且原作者好像已不再更新。于是就整合了一个修改版。

更新内容:

  1. 修复 HTML 代码被执行的问题(CFC4N);
  2. 修改 coolcode 标签为 code;
  3. CSS 样式稍作修改。

下载地址:coolcode-gesion

去掉 Chrome 默认的 input、textarea 的边框

使用 Chrome 的都知道,当鼠标焦点在 input、textarea 这些元素上时,Chrome 默认的会给它们加上黄色的边框,我以前一直以为这是 Chrome 的特性,没法去掉,原来是 css 的效果,outline 这个属性。

你可以用下面的 css 代码去掉所有元素的边框:

*:focus { outline: none; }

用下面的代码去掉你要去掉的元素的边框:

.nohighlight:focus { outline: none; }

你也可以给元素增加你希望的边框:

.changeborder:focus { outline: 4px solid blue; }

把网站的快捷方式保存到用户的桌面

很早时候做这功能用的是笨办法:把事先创建好的快捷方式上传到服务器,直接以流数据输出下载。。。

其实把 .url 文件用 editplus 打开,将里面的字串输出下载即可产生同样的效果。

代码如下:

<?php
/**
 * Internet Shortcut
 *
 * Add the following into "head":
 *     <link href="favicon.ico" rel="icon" type="image/x-icon" />
 *     <link href="favicon.ico" rel="shortcut icon" type="image/x-icon" />
 *     <link href="favicon.ico" rel="bookmark" type="image/x-icon" />
 */
$shortcut = '[InternetShortcut]
URL=http://onens.com/
IDList=
[{000214A0-0000-0000-C000-000000000046}]
Prop3=19,2
';
header('Content-type: application/octet-stream');
header('Content-Disposition: attachment; filename=Onens.Com.url;');
echo $shortcut;

PHP 截取字符串

PHP 自带几种字符串截取函数,其中常用到的就是 substr 和 mb_substr。前者在处理中文时,GBK 为 2 个长度单位,UTF 为 3 个长度单位,后者指定编码后,一个中文即为 1 个长度单位。

substr 不用说,有时会截 1/3 个中文或半个中文,当然显示出来是乱码了,相对来说 mb_substr 更适合我们使用。不过有时候 mb_substr 就显得不那么好用了。例如我要显示一个小图片的简要信息,5 个中文正好,超过 5 个就截取前4再加上 "...",这样处理中文是没问题了,可是处理英文或数字,这样截取就太短了。

继续阅读“PHP 截取字符串”