arrayAccess インターフェイスの使用法、arrayaccess インターフェイス
<?<span>php
</span><span>//</span><span>get the methods instance of ArrayAccess
//get the properties instance of ArrayAccess</span>
<span>$reflection</span> = <span>new</span> ReflectionClass('ArrayAccess'<span>);
</span><span>//</span><span>var_dump($reflection->getMethods());
//var_dump($reflection->getProperties());</span>
<span>class</span> dbTypes <span>implements</span><span> ArrayAccess{
</span><span>private</span> <span>$dbtypes</span> = <span>array</span><span>();
</span><span>//</span><span>判定是否存在</span>
<span>public</span> <span>function</span> offsetExists(<span>$offset</span><span>){
</span><span>return</span> <span>isset</span>(<span>$this</span>->dbtypes[<span>$offset</span>]) ? <span>true</span> : <span>false</span><span>;
}
</span><span>//</span><span>获取一个值</span>
<span>public</span> <span>function</span> offsetGet(<span>$offset</span><span>){
</span><span>if</span>(<span>$this</span>->offsetExists(<span>$offset</span><span>)){
</span><span>return</span> <span>$this</span>->dbtypes[<span>$offset</span><span>];
}</span><span>else</span><span>{
</span><span>return</span> <span>null</span><span>;
}
}
</span><span>//</span><span>设置一个值</span>
<span>public</span> <span>function</span> offsetSet(<span>$offset</span>,<span>$value</span><span>){
</span><span>$this</span>->dbtypes[<span>$offset</span>] = <span>$value</span><span>;
}
</span><span>//</span><span>删除一个值</span>
<span>public</span> <span>function</span> offsetUnset(<span>$offset</span><span>){
</span><span>unset</span>(<span>$this</span>->dbtypes[<span>$offset</span><span>]);
}
}
</span><span>$types</span> = <span>new</span><span> dbTypes();
</span><span>echo</span> <span>$types</span>['nosql'<span>];
</span>
ログイン後にコピー
http://www.bkjia.com/PHPjc/965028.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/965028.html技術記事 arrayAccess のインターフェイスを使用します。 arrayaccess インターフェイス? php // ArrayAccess のメソッド インスタンスを取得します。 // ArrayAccess のプロパティ インスタンスを取得します。 $reflection = new ReflectionClass('Arra...