php 执行系统命令的方法
2015-01-24信息快讯网
在一个项目里用到这样的东西,用另外一个服务做了一些事情,生成的文件权限,通过php 无法读取,测试了很多种方式都没能实现,在网上找了下,可以用c写一个代理来实现,本人就实现了一下,果真可以。
代码如下:#include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <unistd.h> #include <string.h> int main(int argc,char * argv[]) { uid_t uid,euid; char cmd[1024]="chmod -R 777 "; uid =getuid(); euid = geteuid(); //printf("param %s\n",strcat(cmd,argv[1])); //exit(0); //printf("uid:%un. eudi=%un\n",getuid(),geteuid()); if(setreuid(euid,uid)) perror("setreuid"); //printf("uid:%un. eudi=%un\n",getuid(),geteuid()); system(strcat(cmd,argv[1])); return 0; }
现在说下,在linux下面,gcc编译,以及复权的问题:
执行
gcc -Wall -o phpchmod phpchmod.c
执行
chmod u+s ./phpchmod
php代码的使用:
$chmod_line = dirname(__FILE__)."/phpchmod ./dest_dir/"; system($chmod_line);
简单的移动设备检测PHP脚本代码
PHP下通过file_get_contents的代理使用方法
php文件上传表单摘自drupal的代码
php 连接mysql连接被重置的解决方法
php中获取关键词及所属来源搜索引擎名称的代码
让PHP以ROOT权限执行系统命令的方法
PHP执行zip与rar解压缩方法实现代码
PHP 函数执行效率的小比较
PHP计划任务之关闭浏览器后仍然继续执行的函数
php set_time_limit(0) 设置程序执行时间的函数
程序员编程十条戒律
PHP 页面跳转到另一个页面的多种方法方法总结
php 多个submit提交表单 处理方法
PHP 上传文件大小限制
phpmyadmin MySQL 加密配置方法
php mysql Errcode: 28 终极解决方法
PHP 中执行排序与 MySQL 中排序
php 动态执行带有参数的类方法
php执行sql语句的写法
php 页面执行时间计算代码
PHP执行速率优化技巧小结