diff options
author | icewing <icewing@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2008-03-06 14:21:44 +0000 |
---|---|---|
committer | icewing <icewing@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2008-03-06 14:21:44 +0000 |
commit | f0cc1dbedd660c3d1e3014fe5673cfb2d77622ae (patch) | |
tree | 8ec26ede0e296ae1fbb5526a824ba20b9cdfc1e8 | |
parent | 674205a2651af6f7e611dc001f6efc349580df55 (diff) | |
download | elgg-f0cc1dbedd660c3d1e3014fe5673cfb2d77622ae.tar.gz elgg-f0cc1dbedd660c3d1e3014fe5673cfb2d77622ae.tar.bz2 |
Marcus Povey <marcus@dushka.co.uk>
* Casting takes advantage of constructor
git-svn-id: https://code.elgg.org/elgg/trunk@99 36083f99-b078-4883-b0ff-0f9b5a30f544
-rw-r--r-- | engine/lib/objects.php | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/engine/lib/objects.php b/engine/lib/objects.php index 62039ff38..f939b0ce5 100644 --- a/engine/lib/objects.php +++ b/engine/lib/objects.php @@ -21,10 +21,8 @@ function row_to_elggobject($row) {
if (empty($row))
return $row;
- $object = new ElggObject();
- foreach(get_object_vars($row) as $property => $value)
- $object->$property = $value;
- return $object;
+ + return new ElggObject($row);
}
/**
@@ -367,8 +365,13 @@ $this->attributes = array(); - if (!empty($id)) {
- if ($object = get_object($id)) {
+ if (!empty($id)) { + if ($id instanceof stdClass) + $object = $id; // Create from db row + else + $object = get_object($id); +
+ if ($object) {
$objarray = (array) $object;
foreach($objarray as $key => $value) {
$this->attributes[$key] = $value;
|