これが私がやりたいことです:
$clsName = substr(md5(rand()),0,10); //generate a random name
$cls = new $clsName(); //create a new instance
function __autoload($class_name)
{
//define that instance dynamically
}
明らかにこれは私が実際に行っていることではありませんが、基本的にクラスの名前は不明であり、その名前に基づいて、特定のプロパティなどを使用してクラスを生成したいと思います。
eval()を使用してみましたが、privateおよび$this->参照に適合しています...
//編集
わかりました、明らかに私の短くて甘い「これが私がやりたいことです」は答えを提供することができるかもしれない人々の間で大規模な争いと驚愕を引き起こしました。実際の答えを得ることを期待して、私はより詳細になります。
自分が管理しているサイトにコードヒントを使用した検証フレームワークがあります。各関数には2つの定義があります
function DoSomething($param, $param2){
//code
}
function DoSomething_Validate(vInteger $param, vFloat $param2){
//return what to do if validation fails
}
データベースに主キーのバリデーターを追加しようとしています。すべてのテーブル(203)に個別のクラスを作成したくありません。だから私の計画は次のようなことをすることでした
function DoSomething_Validate(vPrimaryKey_Products $id){ }
__autoloadがvPrimaryKeyのサブクラスを生成し、テーブルパラメータをProductsに設定する場合。
今幸せです?