例1,改变文件的权限与所有权。
<?
chmod("/var/www/myfile.txt", 0777);
chmod("/var/www/myfile.txt", 0755);
if (chown("myfile.txt", "sally")) {
print "文件所有者已修改.\n";
} else {
print "文件所有权更改失败!\n";
}
?>
例2,更改文件的权限。
chmod('/home/user/secrets.txt',0400);
?>
例3,chmod简单例子。
$fr = @fopen("data.txt", 'w');
if(!$fr) {
chmod("data.txt", 0722);
$fr = @fopen("data.txt", 'w');
if(!$fr) {
echo "Error: Couldn't open data.txt (chmod attempted)";
exit;
}
}
fputs($fr, "Write Successful!");
fclose($fr);
?>
说明:
chmod()函数用于管理文件的操作权限。
原型为:
int chmod (string filename, int permissions)
权限必须指定为十进制模式。
例如:
chmod ("data.txt", 0766); // 正确的权限代码
?>
例1,修改文件的属主与属组,学习函数chown、chgrp的用法。
<?php
chown('/tmp/myfile.txt','sklar'); // specify user by name
chgrp('/home/sklar/schedule.txt','soccer'); // specify group by name
chown('/tmp/myfile.txt',5001); // specify user by uid
chgrp('/home/sklar/schedule.txt',102); // specify group by gid
?>
例2,chown() and chgrp()函数实例
<?php
$dr = @opendir("/tmp/");
if(!$dr) {
echo "Error, couldn't open /tmp/!";
exit;
}
while(($filename = readdir($dr)) !== false) {
chown($filename, "php");
chgrp($filename, "phpgroup");
}
closedir($dr);
?>
说明:
本次编译只是单独编译php的扩展库,然后将编译好的php扩展库加到现在运行的php中,不对现在运行的php重新编译,对现在运行的php没有任何影响。
有两种方法可以实现这一操作,下面分别介绍。
方法一,
1,找到当前运行的php版本的源代码目录,如php-5.2.3。进入curl扩展库目录。
$cd /home/src/php-5.2.3/ext/curl
2,调用phpize程序生成编译配置文件。
$/usr/local/php/bin/phpize
3,编译扩展库,分别执行下面的configure和make命令。
$./configure -with-php-config=/usr/local/php/bin/php-config
此步执行通过后,再执行make命令,如果configure执行不通过,则查找错误原因。
$make
#make成功执行后,生成的扩展库文件在当前目录的 modules 子目录下,如 /home/php-5.2.3/ext/curl/modules/curl.so
4,配置php.ini文件
#将编译好的扩展库文件复制到PHP的扩展目录下,查看phpinfo信息。
$cp /home/src/php-5.2.3/ext/curl /modules/curl.so /usr/local/php/ext
#在php.ini文件中找到设置扩展目录的位置,然后将扩展路径设置到apache2 modules目录下,并添加扩展库位置。
extension_dir = “/usr/local/php/ext/”
extension=curl.so
##如果还要添加别的扩展库的话,则只需先将php扩展库编译好,然后copy到apache2 modules目录下,再在这个位置,添加一行将编译后的扩展库文件名加上即可。
5,重启apache,查看phpinfo信息,即可看到刚才添加进去的curl扩展库。
方法二,
1,安装crul
tar -zxvf curl-7.19.6.tar.gz
cd curl-7.19.6
./configure --prefix=/usr/local/curl
make
make install
2,编译生成扩展进入php源程序目录中的ext目录中,这里存放着各个扩展模块的源代码,选择你需要的模块,比如curl模块:
cd /usr/webserver-soft/php-5.2.14/ext/curl/
执行phpize生成编译文件,phpize在PHP安装目录的bin目录下
./configure --with-curl=/usr/local/curl --with-php-config=/usr/local/php/bin/php-config
make
make install
这样,curl.so就被复制到PHP对应目录(如:
/usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626/)
3,修改配置在php.ini里,设置扩展目录:
extension_dir = "/usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626/"
并添加扩展模块引用:
extension = curl.so
4,检查并重启Apache
/usr/local/php/bin/php -v
执行此命令时,php检查配置文件是否正确。
5,检查php已加载的模块
/usr/local/php/bin/php –m | grep curl
您可能感兴趣的文章:
linux下为php添加扩展库的方法
php mysqli扩展库之预处理操作的二个例子
php mysqli扩展库操作mysql的例子
php mysqli扩展库应用一例