最近、手続き型プログラミングよりも優れていることを知っているので、より多くのOOPベースのプログラミングを始めようとしていますが、おそらく簡単な質問があります。それぞれのタスクにタイトル、説明、完了までの距離、誰がそれを提出したかという「タスク」クラスを実装したい場合。インスタンス間のPHPクラス変数
class Tasks
{
public $title;
public $description;
public $completionPercent;
public $contact;
public function __construct($title, $description, $completionPercent, $contact)
{
$this->title = $title;
$this->description = $description;
$this->completionPercent = $completionPercent;
$this->contact = $contact;
}
public function getTitle()
{
return $this->title;
}
public function getDescription()
{
return $this->description;
}
public function getCompletionPercent()
{
return $this->completionPercent;
}
public function getContact()
{
return $this->contact;
}
public function setTitle($title)
{
$this->title = $title;
}
public function setDescription($description)
{
$this->description = $description;
}
public function setCompletionPercent($completionPercent)
{
$this->completionPercent = $completionPercent;
}
public function setContact($contact)
{
$this->contact =$contact;
}
}
私はタスクを作成し、近くブラウザのように、後でそれにアクセスして、私が更新を持っている場合、数日後にそれに戻って来れば私の質問です:私はクラスを作成するために、次のコードを持っていますそれをどのように保存して再アクセスするのですか?私はデータベースを理解し、私が学ぶために使用している私の現在のサイトでそれらを頻繁に使用しますが、クラスをスキップしてデータベースを利用できると仮定すると、データベースのクラスからの情報の格納方法は論理的ではありません。私は、XML/jsonをファイルにシリアライズしたり保存したりしてクラスにアクセスすることができると読んでいますが、ファイルを配列に読み込んでその方法で使用できるのであれば、なぜクラスが必要なのかわかりません。私はOOPが重要だと知っていますが、私はまだクラスを定期的に使用し始めることができるので、プログラマーとして慣れ親しんで進歩させることができます。私は彼のことについてネット上でたくさん読んでいると確信していますが、私はちょうど私が欲しいものではないセッション変数にクラス変数を格納することを見つけ続けています。私が明確にすることができるものがあれば教えてください。私が最初にクラスを作ったら、私は$task1 = new Task(...);
のようなことをやっていますが、ブラウザを閉じてログインし直しても、まだ$task1
にアクセスできません。私はちょうど$task1->getTitle();
を行うことができないので、どのように私はクラスを再初期化するのですか?
あなたの質問は全く具体的ではありませんが、私はあなたが必要としていることをよく理解していません。とにかく私はORMを見てみるべきでしょう。http://stackoverflow.com/questions/1279613/what-is-私が学ぶことができる、そしてhttp://www.doctrine-project.org/またはあなた自身がグーグルで行うことができる他の実装 – scx
ところで、あなたのゲッターとセッターは役に立たない。 1)あなたのプロパティは 'public'なので、setterは回避できます。 2)あなたのセッターは何もしていないので、直接財産へのアクセスを何も追加しません。 - プロパティを 'public'にしてgetters/setterを取り除くだけです。 – deceze