Ludewig: Abfrage ob Parameter vorhanden

Beitrag lesen

Hi,

Da es dir um die Existenz des Parameternamens geht, müßte die Abfrage so aussehen:

Genau so, und ich meine mein erstes Statement
"ob ein Parameter p1 beim Aufruf übergeben wurde? Der Parameter kann einen Wert zugewiesen haben oder nicht" sagt genau dies aus.

my $aa = defined $x->param('p1') ? $x->param('p1') || 'default' : '';

Wenn ich die Perl-Beschreibung richtig verstehe, so ist defined nicht korrekt!
Dort steht, wenn ein Parameter existiert, muss er nicht definiert sein - das Umgekehrte gilt nicht.
Hottis Vorschlag funktioniert (mit meiner kleinen Änderung).