phdfs扩展下载地址: http://pecl.php.net/get/phdfs-0.1.2.tgzphp
解释下Linux命令:vim
./configure #脚本配置工具app
./configure --help #查看脚本配置工具configure的命令行选项工具
/usr/local/php/bin/phpize #phpize命令用于在编译好的PHP中扩展模块oop
1. 下载你要安装的软件包,解压获得目录(如:phdfs) spa
2. 进入软件包目录(cd phdfs) .net
3. 执行phpsize命令(/usr/local/php/bin/phpize) 命令行
成功后,当前目录将获得configure文件。 debug
4. 进行配置(./configure --with-php-config=/usr/local/php/bin/php-config #指定安装在哪一个PHP) ip
注:若是系统缺乏phpize命令,且你使用的是预编译的RPM包,那么必定要安装适当的PHP开发版本,由于它们通常都包含phpize命令连同合适的头文件来编译PHP及其扩展。
5. 编译安装
make&make install
6. 安装成功出现以下提示:
扩展存放位置:
7. 修改PHP配置文件(vim /usr/local/php/etc/php.ini)
加入: extension = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/phdfs.so";
或直接: extension = "phdfs.so";(注意前面不要加分号,若是已有extension_dir, 则不须要再写)
phdfs是一个采用C语言的实现的PHP扩展,可以使用PHP来操做Hadoop HDFS文件系统。示例:
<?php try { $obj = new phdfs(); $obj->port = "9000"; $obj->ip = "127.0.0.1"; $obj->connect(); //create file $log = $obj->write("/a/b/c/test1.txt","test",O_WRONLY|O_CREAT); //appden file $log = $obj->write("/a/b/c/test2.txt","test",O_WRONLY|O_APPEND); var_dump($log); echo $obj->rename("/a/b/c/test2.txt","/a/b/c/test3.txt"); }catch (Exception $ex) { echo $ex->getMessage(); } ?>
简单API使用:
$obj.copyFromLocalFile(src, dst);
$obj.delete(delpath, false);
$obj.exists(findfile);
参考:http://www.oschina.net/p/phdfs