public static function length($obj = null) { if (is_string($obj)) { return strlen($obj); } elseif (is_array($obj) || $obj instanceof \Countable) { return count($obj); } elseif ($obj instanceof \Traversable) { return iterator_count($obj); } else { return 1; } }
public function test_length() { $this->assertEquals(13, Helper::length('Hello, World!')); $this->assertEquals(3, Helper::length(array(1, 2, 3))); $this->assertEquals(1, Helper::length(1)); $this->assertEquals(1, Helper::length(new \StdClass())); }