Re: php variables in a backtick command

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I'm not sure about variable expansion with backticks(I don't use
backticks, if necessary I use shell_exec() instead). I'm just after
installing a fresh SuSE 9.1, and php is giving me a segfault at the
minute, with that particular code, but if you were using double quotes
you could:

$command = "adduser -l=$dist_id -p={$user['password']}
--f=\"{$user['name_first']} {$user['name_last']}\"";

bearing in mind that the variables have been {}'ed, and your double
quote around $user['name_first'] and ['name_last']) has been escaped
to \"

you can use shell_exec($command), which is identical to the backtick operation.

Having that said, you should consider using alternative program
execution instead, instead of using the shell. What do you need the
shell for? You might(albeit unlikely) also come across a situation
where the shell is something like /bin/false, or /bin/falselogin, or
/bin/scponly, or basicly something that doesn't particularly work that
well as a shell.

Rory

On Sat, 11 Dec 2004 18:09:17 -0700, Jonathan Duncan <jonathan@xxxxxxxxxx> wrote:
> I am trying to run a shell command with backticks.  However, I get a parse
> error.  Is it because I have an array variable in there?
> 
> $result = `adduser -l=$dist_id -p=$user['password'] --f="$user['name_first']
> $user['name_last']"`;
> 
> Do I need to assign the value to a regular variable before I put it in
> there?  Like this?
> 
> $pword=$user['password']
> $fname =$user['name_first']
> $lname =$user['name_last']
> $result = `adduser -l=$dist_id -p=$pword --f="$fname $lname"`;
> 
> Thanks,
> Jonathan
> 
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 
>

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux