Die englische Hilfe sagt: $iflonger(a,b,x,y) if string a is longer than number b, x is returned, otherwise y.
Die deutsche: $iflonger(a,b,x,y) Wenn a länger b Zeichen ist, wird x zurück geliefert, andernfalls y.
leider wird im deutschen nicht klar, dass b eine Zahl sein muss.
Wenn du 2 Längen vergleichen willst (und nicht überprüfen, ob ein String länger als eine vorgegebene Zahl), dann musst du die Länge erst in eine Zahl umwandeln mit $len(). $iflonger('abc','abcd','yes','no') ==> 'yes' (should be 'no') liefert "yes", weil der String abcd als Zahl 0 liefert.
Zum Vergleich mit $iflonger() müsste es sein: $iflonger('Abcd',$len('abc'),yes,no)