Articles of PHP的

如何获得proc_open()的输出

我试图从php的proc_open方法得到输出,但是,当我打印它,我得到空。 $ descriptorspec = array( 0 => array(“pipe”,“r”), 1 => array(“pipe”,“w”), 2 => array(“file”,“files / temp / error-output.txt”,“a”) ); $ process = proc_open(“time ./a a.out”,$ descriptorspec,$ pipes,$ cwd); 只要我知道,我可以得到stream_get_contents()的输出 echo stream_get_contents($ pipes [1]); FCLOSE($pipe[1]); 但是我不能这么做..有什么build议吗? Thx之前…

当LAMP服务器上有数百万用户时,什么是最快和最有效的存储和提取图像的方式?

这是迄今为止我提出的最好的方法,我想知道是否有一个更好的方法(我确定有!)来存储和获取数以百万计的用户图像: 为了保持目录的大小,并避免对数据库进行任何额外的调用,我使用基于用户的唯一ID计算的嵌套目录如下: $firstDir = './images'; $secondDir = floor($userID / 100000); $thirdDir = floor(substr($id, -5, 5) / 100); $fourthDir = $userID; $imgLocation = "$firstDir/$secondDir/$thirdDir/$fourthDir/1.jpg"; 用户ID( $userID )的范围从1到数百万。 所以,如果我有用户ID 7654321 ,例如,该用户的第一张照片将被存储在: ./images/76/543/7654321/1.jpg 对于用户ID 654321 : ./images/6/543/654321/1.jpg 对于用户ID 54321 ,它将是: ./images/0/543/54321/1.jpg 对于用户ID 4321 ,它将是: ./images/0/43/4321/1.jpg 对于用户ID 321 ,它将是: ./images/0/3/321/1.jpg 对于用户ID 21 ,它将是: ./images/0/0/21/1.jpg 对于用户ID 1 ,它将是: ./images/0/0/1/1.jpg 这确保了用户高达100,000,000,我永远不会有一个目录超过1000个子目录,所以它似乎保持干净和高效。 […]

Nginx下载PHP而不是运行它

如果在Linux REHL机器上安装Nginx php服务器。 当访问html文件一切顺利,但试图访问php文件,该文件被下载,而不是被执行。 这是我的nginx.conf: user nginx; worker_processes 1; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr – $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; #tcp_nopush on; keepalive_timeout 65; #gzip on; include /etc/nginx/conf.d/*.conf; } …这是服务器块: server […]

从php脚本运行git pull

我正在尝试使用Git,GitHub和SSH的完美工作stream,除了运行git pull命令之外,我已经设置了一切。 当我运行exec('git pull')我得到: 无法创build目录“/.ssh”。 主机密钥validation失败。 致命的:远端意外挂断 如果我在terminal(作为根)运行它,它工作得很好,但我需要这个钩子从邮政接收url(Github)工作。 如果我做exec('whoami')我得到apache 。 这是CentOS中的一个(dv)。

无法从stream动虚拟机发出出站HTTP请求

我无法从我设置的Vagrant虚拟机内连接到互联网。 例如,在根,当我input: curl http://google.com 它失败的消息: curl: (6) Couldn't resolve host 'google.com' 我不确定是否是防火墙设置,但据我所知,我还没有为端口80或任何其他端口创build任何防火墙规则。 这是我的stream浪文件的相关部分。 如果有任何其他信息可以提供,请在评论中告诉我们: Vagrant.configure("2") do |config| # All Vagrant configuration is done here. The most common configuration # options are documented and commented below. For a complete reference, # please see the online documentation at vagrantup.com. # Let Vagrant manage the hostname at boot […]

mkdir权限将不起作用

我不明白为什么我必须使用chmod来获得正确的权限..该文件已成功创build,但0755而不是0775,我在mkdir指定。 ( http://php.net/manual/en/function.mkdir.php ) 我必须在mkdir之后执行chmod来设置正确的权限。 安全模式在php.ini中是closures的,并且该文件夹属于php的组和所有者(www-data) 这不起作用: if(!is_dir("/var/www/customers/$username/$project_name")) { mkdir("/var/www/customers/$username/$project_name",0775); } 但是这样做: if(!is_dir("/var/www/customers/$username/$project_name")) { mkdir("/var/www/customers/$username/$project_name"); chmod("/var/www/customers/$username/$project_name",0775); }

将HTML转换为RTF(HTML2RTF转换器)

我正在寻找一个简单的HTML2RTF转换器,我可以使用我的网站上使用* nix像操作系统。 我在网上找不到任何东西,希望SO社区能帮助我。 PS:我不想从头开始实现,只要我可以在像系统一样的* nix上运行它,它并不是什么语言。 如果你们已经有一些个性化的实现,那么首选的语言就是PHP。

升级在XAMPP为PHP的PHP?

我怎样才能升级我当前的PHP(仅)在XAMPP? 我需要从5.3.1升级到5.4.0

用php在后台执行一个shell脚本

我需要执行一个shell脚本。 赶上是我想要做到这一点 $Command = "nohup cvlc input –sout '#transcode {vcodec=h264,acodec=mp3,samplerate=44100}:std{access=http,mux=ffmpeg{mux=flv},dst=0.0.0.0:8083/".output"}' &"; $str = shell_exec($Command); 我不希望它等到命令完成后,我希望它在后台进程中运行。 我不希望另一个PHP线程,因为它会超时命令可能需要3个小时才能完成。

在服务器端完全运行PHP脚本

我遇到了一个问题,那就是腻子经常断开连接。 所以,当我从terminal运行PHP脚本时,它总是被打断。 剧本应该运行几个小时,所以我没有任何运气。 我怎么能从服务器端完全运行这个? 我正在阅读关于cron的工作,但是我现在很难理解。 有什么替代我的需要克伦? 我有几个脚本PHP文件需要一个一个地运行,或者一次运行两个。 有任何想法吗?