Updating Data through Objects

Posted by Chacha102 on Stack Overflow See other posts from Stack Overflow or by Chacha102
Published on 2010-03-26T02:27:13Z Indexed on 2010/03/26 2:33 UTC
Read the original article Hit count: 293

Filed under:
|

So, lets say I have a record:

$record = new Record();

and lets say I assign some data to that record:

$record->setName("SomeBobJoePerson");

How do I get that into the database. Do I.....

A) Have the module do it.

class Record{
    public function __construct(DatabaseConnection $database)
    {
        $this->database = $database;
    }
    public function setName($name)
    {
        $this->database->query("query stuff here");
        $this->name = $name;
    }
}

B) Run through the modules at the end of the script

class Record{
    private $changed = false;
    public function __construct(array $data=array())
    {
        $this->data = $data;
    }
    public function setName($name)
    {
        $this->data['name'] = $name;
        $this->changed = true;
    }
    public function isChanged()
    {
        return $this->changed;
    }
    public function toArray()
    {
        return $this->array;
    }
}
class Updater
{
    public function update(array $records)
    {
         foreach($records as $record)
         {
             if($record->isChanged())
             {
                 $this->updateRecord($record->toArray());
             }

         }
    }
    public function updateRecord(){ // updates stuff
    }


 }

© Stack Overflow or respective owner

Related posts about php

Related posts about oop