Perl\'s join() ignores (skips) empty array values; PHP\'s implode() does not appear to.
Suppose I have an array:
$array = a
How you should implement you filter only depends on what you see as "empty".
function my_filter($item)
{
return !empty($item); // Will discard 0, 0.0, '0', '', NULL, array() of FALSE
// Or...
return !is_null($item); // Will only discard NULL
// or...
return $item != "" && $item !== NULL; // Discards empty strings and NULL
// or... whatever test you feel like doing
}
function my_join($array)
{
return implode('-',array_filter($array,"my_filter"));
}