public function testPropertyNonEmpty() { $object = new PropertyClass(); $object->name = 't_name'; $object->age = 't_age'; $this->assertEquals('t_age', Objects::pnonempty($object, ['miss', 'age', 'name'])); $this->assertNull(Objects::pnonempty($object, ['miss1', 'miss2'])); $this->assertNull(Objects::pnonempty($object, [])); $this->assertEquals('no', Objects::pnonempty($object, ['miss1', 'miss2'], 'no')); $this->assertEquals('no', Objects::pnonempty($object, [], 'no')); }
/** * return the first non-empty property of an object from * a specified list of properties * * @param object $object * @param array $properties * @param null $default * * @return mixed * * @deprecated */ function pnonempty($object, array $properties, $default = null) { return \Packaged\Helpers\Objects::pnonempty($object, $properties, $default); }
protected function _getProperty($object, $propertyList) { $properties = (array) $propertyList; $result = Objects::pnonempty($object, $properties); if ($result === null && isset($object->result)) { $result = Objects::pnonempty($object->result, $properties); } return $result; }