Presumivelmente, você está passando os argumentos na linha de comando da seguinte maneira:
php /path/to/wwwpublic/path/to/script.php arg1 arg2
... e, em seguida, acessando-os no script assim:
<?php
// $argv[0] is '/path/to/wwwpublic/path/to/script.php'
$argument1 = $argv[1];
$argument2 = $argv[2];
?>
O que você precisa fazer ao passar argumentos por HTTP (acessando o script pela Web) é usar a cadeia de consulta e acessá-los através da superglobal $ _GET:
Vá para http://seudominio.com/path/to/script.php?argument1=arg1&argument2=arg2
... e acesse:
<?php
$argument1 = $_GET['argument1'];
$argument2 = $_GET['argument2'];
?>
Se você deseja que o script seja executado, independentemente de onde você o chama (linha de comando ou do navegador), é recomendável algo como o seguinte:
EDIT: como apontado por Cthulhu nos comentários, a maneira mais direta de testar em qual ambiente você está executando é usar a constante PHP_SAPI . Atualizei o código de acordo:
<?php
if (PHP_SAPI === 'cli') {
$argument1 = $argv[1];
$argument2 = $argv[2];
}
else {
$argument1 = $_GET['argument1'];
$argument2 = $_GET['argument2'];
}
?>