Ben komut satırından değil PHP exec itibaren komutunu çalıştırın () neden herhangi bir fikir

0 Cevap php

Tamam

Ben bazı yaratıcı arama yaptım ve nazik bir yol blok isabet duyuyorum.

Ben linux programı kullanmaya çalışıyorum "sox." Benim PHP komut dosyası aramak için çalışıyorum. Ben komut satırını kullanırsanız komut çalışmaz ETMEZ. Ben PHP exec Ancak, bu çalışmıyor.

Örnek:

sox file1.mp3 file2.mp3 tempfile.mp3 -V3

("V3" a ayrıntılı çıkışını belirtir)

"Kullanıcı X" olarak ya da root olarak komut satırında çalıştırırken, ben yeni bir dosya oluşturmak mümkün duyuyorum. Ancak, komut olarak çalıştırdığınızda:

<?php
exec('sox file1.mp3 file2.mp3 tempfile.mp3  -V3', $output);
foreach($output as $line){
print $line;
}

Bu yeni bir dosya oluşturmak değil. Ayrıca, komutun sonuçlarını dönmelidir dizi boştur.

Ben basit bir yazı ile yapmış

exec(ls,$output);

ve i kök dizinin içeriğini almak.

Ben PHP komutunu get_current_user() kullanılan ve web sitesinin kök dizinin sahibini döndü.

Ancak, ben linux komutunu kullandığınızda whoami Ben o kadar geçerli kişiyi gördüğünü öğrendim "apache." Apache programı kullanmak için haklarını vermek gerekir?

Ben online arama ve ben yanlış yapıyorum anlamaya amacıyla deneme ve hata yapmaya devam edecektir. Herhangi bir yardım takdir edilmektedir.

Clarifications

  • I am not in safe mode (I checked the phpinfo() page")

0 Cevap