Hallo,
Am Die 21.10.03 um 01:45 CEST schrieb Martin Bayer
bin mir nicht sicher, aber: php ist ja fuer (dyn.) websites gemacht worden und dort werden parameter in der url mit plus (+) aneinandergehaengt. www.beliebige-urs.xxx?parameter1=y+parameter2=x .... ist jetzt mal so ohne nachzuschauen hingeschrieben. evtl. beim w3c die versch. url-typen nachlesen und evtl. in php-doc nachschauen.
Nein Das '+'-Zeichen steht in einer URL für eine Leerzeichen (was ja auch zu dem Beispiel pasen würde). Allerdings kann es nicht im Sinne des Erfinders sein das PHP dieses Verhalten auch bei Shellargumenten beibehält. mfg matthias
cu, martin
On Mon, 2003-10-20 at 15:01, Stefan Heinrichsen wrote:
Hallo Liste,
ich verwende PHP gerne als Shell-Skript Sprache dabei ist mir folgendes fehlerhaftes Verhalten aufgefallen: Wenn ein Parameter ein "+" enthält wird dieses als Trenner von 2 Parametern verwendet. Ein einfaches anschauliches Beispiel:
/------------------------------ |natis:~/bin> cat test.php |#!/usr/bin/php -Cq |<?PHP |echo "Parameter 1 is: ",$_SERVER[argv][1],"\n"; |echo "Parameter 2 is: ",$_SERVER[argv][2],"\n"; |?> |natis:~/bin> test.php 1+2 |Parameter 1 is: 1 |Parameter 2 is: 2 |natis:~/bin> \------------------------------
Richtig wäre die Ausgabe: Parameter 1 is: 1+2 Parameter 2 is:
mfg Stefan