Articles of PHP的

ImageMagick转换工作在命令行,但不是通过PHP exec()

我正在使用PHP的exec()来使用ImagicMagick的convert图像。 这是在CentOS服务器上运行的。 exec(convert http://img.zgserver.com/php/logo3w.png.jpg -resize 640 /home/mysite/public_html/public/img/posts/original/1414_301a4.jpg); 使用exec()不会使新图像出现在目标文件夹中。 但是,如果我要在shell中运行相同的命令,那么这个命令完美无缺! 我相信这是一个PATH问题。 如果是这样,我该如何检查PHP正在使用的path,以及如何在PHP中设置正确的path?

如何将audio文件(即时)转换为浏览器?

我希望能够将audio文件转换为MP3到用户浏览器上。 我使用的软件是:在Ubuntu系统上的Apache,PHP和FFMPEG。 这是我到目前为止的代码: <?php header("Content-Transfer-Encoding: binary"); header("Content-Type: audio/mpeg, audio/x-mpeg, audio/x-mpeg-3, audio/mpeg3"); passthru('ffmpeg -i song.flac -v 0 -ab 320k -f mp3 -'); ?> 有了这个代码,只有audio的前几秒被转换,但是,当我注释掉头function,audio文件被完全转换,但所有的二进制数据传递到屏幕(而不是包装在浏览器的MP3播放器)。 有什么想法吗?

在后台使用&PHP不能正常工作

我在Ubuntu 13.04上使用这个代码, $cmd = "sleep 20 &> /dev/null &"; exec($cmd, $output); 虽然它实际上坐在那里20秒,并等待:/通常它使用&将过程发送到背景时工作正常,但在这台机器上php不会这样做:/ 可能是什么原因造成的?

我可以从PHP调用python脚本或function

我有PHP页面列出备份与文件名和用户名。 备份是用python脚本完成的,但是用于web界面的我用php。 现在我想把设备放在网页上,在备份文件名旁边会出现一个名为restore的button,所有的home目录内容都被replace了。 我可以使用备份文件名,用户名等参数作为python函数,并恢复备份。 但我不知道如何通过PHP将variables传递给python

如何在不更改代码的情况下为Symfony2设置php CLI版本?

我的设置 共享主机 没有root权限 shell访问 symfony 2.1 部署资源(至less,这是计划) build_bootstrap.php使用 #!/usr/bin/env php 这是链接到php4 cli中 /usr/local/bin/php PHP4当然不起作用。 php 5.3 cli在 /usr/local/bin/php53 是否有一个中心位置告诉Symfony 2.1改变环境? 与Putenv的东西? 在bashconfiguration文件中导出path? 更新: 我现在使用@ascatontheflatbuild议在我的bashrc中使用别名。 不幸的是,Symfony带来了自己的逻辑在哪里寻找的PHP二进制文件。 一种select是通过putenv设置PHP_PATH。 我将它添加到app / console和app / autoload.php中,因为这两个文件都涉及Capifony任务

Magento Cron标签作业时区

我试图找出我的模块cron是否在正确的时间运行。 我的模块的cron设置为凌晨1点(0 1 * * *),默认商店的时区是西欧(巴黎,柏林等GMT +2),服务器时间是EDT(东部夏令时)。 那么基于哪个时区是凌晨1点? 谢谢,

使用POST数据和命令行标题调用CURL

我正在使用RESTAPI与django服务器通信php客户端。 我发布了json数据。 PHP代码是 $arr=array("username"=>"dtthtdas45", "password"=>"123456", "email"=>"ramg@ram.com", "is_active"=>"1", "is_staff"=>"1", "is_superuser"=>"1", "promo_code"=>"1212121", "gender"=>"m", "birth_year"=>"1991", "zip"=>"77707", "first_name"=>"john", "last_name"=>"doe", "current_state"=>"1" ); echo $data_string= json_encode($arr); $ch = curl_init('http://localhost:8000/api/ecp/user/?format=json'); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . strlen($data_string)) ); $result = curl_exec($ch); 我怎样才能使用命令行调用相同的URL? 我试过了 curl -H 'Content-Type: application/json' -X POST -d '{"username": […]

使用来自PHP / CGI不良做法的shell命令?

shell命令是否被认为是合法的编程接口? 特别是,从PHP页面或CGI文件在linux应用程序服务器上执行bash shell命令有什么问题吗? 这是否会引入效率或安全问题? 谢谢

64位的Linux / Ubuntu和OpenSSL的问题(无法读取符号:值不好)

通常我会search很多东西并阅读很多东西来解决我的问题,但是对于这个特殊的问题,这是非常不利的。 我正在运行一个64位的Ubuntu Linux服务器,我安装了LAMP堆栈,并且libcurl没有SSL支持,而OS二进制文件有SSL支持。 PHP不能读取它。 当我search解决scheme,并尝试执行以下操作以在安装PHP时启用SSL支持,我得到了问题.. ./configure …. –with-openssl … …. /usr/bin/ld: ext/standard/.libs/info.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC ext/standard/.libs/info.o: could not read symbols: Bad value collect2: error: ld returned 1 exit status make: *** [libphp5.la] Error 1 所以,它突然停了下来。 我试着做–enable-shared –without-pic的参数无济于事。

通过PHP执行.sh脚本

我有几个游戏服务器,我需要运行shell脚本进行frequality。 我想弄清楚如何通过同一台服务器上的网页来运行这些脚本。 这是一个Ubuntu专用服务器。 网站文件通过/var/www/… 。我需要手动运行的.sh文件位于/home/amservers/…/start.sh 。 我看了其他答案,我仍然无法弄清楚。 如何find文件并存储它,然后运行exec()?