Pastie now auto-senses if line-wrap is a bad or good idea. Feedback?
## mark a section (Learn more)
function is_blank($value){ $type = gettype($value); switch ($type) { case 'NULL': return true; break; case 'boolean': if ($value === false) return true; break; case 'integer': if ($value == 0) return true; break; case 'double': if ($value == 0.0) return true; break; case 'string': if (preg_match('/^\s*0*\s*$/', $value)) return true; break; case 'array': if (count($value) == 0) { return true; } else { $all_blank = true; foreach ($value as $item) { if (!is_blank($item)){ $all_blank = false; } } if ($all_blank){ return true; } else { return false; } } break; case 'object': $implements = class_implements($value); if ( in_array('ArrayAccess', $implements) && ( in_array('IteratorAggregate', $implements) || in_array('Iterator', $implements) || in_array('SeekableIterator', $implements) || in_array('RecursiveIterator', $implements) ) && in_array('Countable', $implements) ) { if (count($value) == 0) { return true; } else { $all_blank = true; foreach ($value as $item) { if (!is_blank($item)){ $all_blank = false; } } if ($all_blank){ return true; } else { return false; } } } break; default: return false; break; } return false; }
This paste will be private.
From the Design Piracy series on my blog: