Thread JavaScript in Perl übersetzen
(52 answers)
Opened by Nicki271 at 2008-06-23 09:29
Das hier ist falsch:
Code (perl): (dl
)
elsif ($income >= 300 <=> 1000) Denn was macht hier Perl? Perl macht als erstes $income >= 300. Das Ergebnis ist "1". Dann macht Perl 1 <=> 1000. Das ist ein Vergleich, welche Zahl größer ist. Diese Operation liefert "-1" wenn die erste Zahl kleiner als die zweite Zahl ist, "0" wenn beide Zahlen gleich groß sind und "1" wenn die erste Zahl kleiner als die zweite Zahl ist. In diesem Fall (mit $income = 2000) ist das Ergebnis also "-1". Dein elsif überprüft also, ob "-1" "wahr" ist und das ist es... Wenn Du überprüfen willst, ob eine Zahl zwischen zwei Zahlen ist, musst Du das so machen: Code (perl): (dl
)
if( $income >= 300 and $income < 1000 ){...} OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/) -- Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html Perl-Entwicklung: http://perl-services.de/ |