标签归档:PHP

PHP中的换行符预定义常量

很多时候都忘记用这个变量,在这里记一下,加深印象。

PHP_EOL (string)

就是这个常量,可以取得运行系统中换行符。
关于换行:
linux中是\n
win中是\r\n
mac中是\r

PHP提交SVN代码

代码是从崔凯同学那里抄来的。之所以要拿过来一是因为这种想法很好,我自己在工作中也是这样,经常把PHP当做一个小工具来实现,如果PHP够好的话,还可以在linux底下辅助shell完成一些功能。二是因为代码写的很棒,我这个专门学习PHP的都要惭愧的低下头喽!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
ob_start();
if (isset($_GET['cleanup'])) {
    $cmd = 'svn cleanup /data/html/uicss.cn';
} else {
    $cmd = 'svn update /data/html/uicss.cn --username cuikai --password 111222333';
}
$resultado = join("<br>", executa($cmd));
echo $resultado . '<br>';
function executa($cmd, $pathInicial=null) {
    $resultado = array();
    $handle = popen("$cmd 2>&1", 'r');
    while ($read = fread($handle, 20096)) {
        $resultado[] = $read;
    }
    pclose($handle);
    flush();
    return $resultado;
}
?>

php中eval函数使用

eval 每次都让我联想到evil,所以我很少使用这个函数,不过有时候使用一下,还是能够带来不少的方便的。比如下面的代码:

1
2
3
$a = '1,2,4,5,6';
eval("\$b=array($a);");//引号中有一个分号的,不要丢了。
print_r($b);

运行一下就知道效果了。

几种常见的PHP中文分词系统

因为要做毕业设计,可能需要相关知识,所以在此总结一下常见的中文分词系统。

1)HTTPCWS – 基于HTTP协议的开源中文分词系统

张宴的作品,基于ICTCLAS 3.0 共享版,分词精度98.45%。可以采用HTTP方式调用借口。

网址:http://blog.s135.com/httpcws_v100/

2)SCWS – 简易中文分词系统

SCWS 在概念上并无创新成分,采用的是自行采集的词频词典,并辅以一定程度上的专有名称、人名、地名、数字年代等规则集,经小范围测试大概准确率在 90% ~ 95% 之间,已能基本满足一些中小型搜索引擎、关键字提取等场合运用。 SCWS 采用纯 C 代码开发,以 Unix-Like OS 为主要平台环境,提供共享函数库,方便植入各种现有软件系统。此外它支持 GBK,UTF-8,BIG5 等汉字编码,切词效率高。

网址:http://www.ftphp.com/scws/

3)PhpanAlysis – PHP无组件分词系统

PhpanAlysis分词系统是基于字符串匹配的分词方法 ,这种方法又叫做机械分词方法,它是按照一定的策略将待分析的汉字串与一个“充分大的”机器词典中的词条进行配,若在词典中找到某个字符串,则匹配成功(识别出一个词)。按照扫描方向的不同,串匹配分词方法可以分为正向匹配 和逆向匹配;按照不同长度优先匹配的情况,可以分为最大(最长)匹配和最小(最短)匹配;按照是否与词性标注过程相结合,又可以分为单纯分词方法和分词与标注相结合的一体化方法。

网址:http://www.itgrass.com/phpanalysis/

用PHP像JQuery一样操作DOM树

JQuery对DOM树的操作进行了合理的封装,这样使得操作DOM变得简单起来。最方便的就是JQuery的 选择器,可以帮助我们很方便的找到我们想要的节点。但是在PHP操作DOM树,却不是那么方便,除非你非常精通正则。好吧,问题总有解决的方法。就有高人实现了PHP类似于JQuery的操作方法来操作DOM。

这个项目的名字叫:PHP Simple HTML DOM Parser

项目主页http://simplehtmldom.sourceforge.net/

特点

  • A HTML DOM parser written in PHP5+ let you manipulate HTML in a very easy way!
  • Require PHP 5+.
  • Supports invalid HTML.
  • Find tags on an HTML page with selectors just like jQuery.
  • Extract contents from HTML in a single line

示例

$html=str_get_html(“<p class=’article’>hello everyone</p>”);

$html->find(“p.article”);

有了这个扩展,就可以很轻松的在PHP中操作DOM树了。

Spawn-FCGI来控制php-CGI的FastCGI进程

Spawn-FCGI来控制php-CGI的FastCGI进程命令

1
    /usr/local/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php-CGI

参数含义如下:

  -f 指定调用FastCGI的进程的执行程序位置,根据系统上所装的PHP的情况具体设置
  -a 绑定到地址addr
  -p 绑定到端口port
  -s 绑定到unix socket的路径path
  -C 指定产生的FastCGI的进程数,默认为5(仅用于PHP)
  -P 指定产生的进程的PID文件路径
  -u和-g FastCGI使用什么身份(-u 用户 -g 用户组)运行,Ubuntu下可以使用www-data,其他的根据情况配置,如nobody、apache等