Perl join()ignoriert (überspringt) leere Array-Werte; PHPs implode()scheinen nicht.
Angenommen, ich habe ein Array:
$array = array('one', '', '', 'four', '', 'six');
implode('-', $array);
Ausbeuten:
one---four--six
statt (IMHO das vorzuziehen):
one-four-six
Gibt es noch andere integrierte Funktionen mit dem von mir gesuchten Verhalten? Oder wird es ein Custom Jobbie sein?
joinüberspringt keine undefinierten Elemente. In der Tat führen sie zu einer Warnung.$a[0]="a"; $a[2]="c"; say join "-",@a;zeigtUse of uninitialized value within @a in join or stringunda--c. Man kannjoin '-', grep !defined, ...undefinierte Werte überspringen.grep !length,macht leere Strings.