ホームページ  >  記事  >  バックエンド開発  >  「オーバーロード」の概念と質問の表現を工夫した、考えられるタイトルをいくつか示します。 * PHP で演算子を「オーバーロード」できますか? (予期せぬ答え) * オペレート

「オーバーロード」の概念と質問の表現を工夫した、考えられるタイトルをいくつか示します。 * PHP で演算子を「オーバーロード」できますか? (予期せぬ答え) * オペレート

Barbara Streisand
Barbara Streisandオリジナル
2024-10-26 19:30:30915ブラウズ

Here are a few possible titles, playing with the

PHP で演算子をオーバーロードできますか?

PHP は演算子のオーバーロードをサポートしていません。つまり、既存の演算子の動作を再定義することはできません。オペレーター。ただし、演​​算子の動作を変更する別の方法もあります。

たとえば、オーバーロードされた [] 演算子を含む Array クラスを作成する場合は、PHP5 で導入された SPL ArrayObject クラスを使用できます。 ArrayObject を拡張することで、拡張機能を備えた独自のカスタム配列型を定義できます。

簡単な例を次に示します。

<code class="php">class a extends ArrayObject {
    public function offsetSet($i, $v) {
        echo 'appending ' . $v;
        parent::offsetSet($i, $v);
    }
}

$a = new a;
$a[] = 1;</code>

このコードの出力は次のとおりです。

appending 1

By offsetSet() メソッドをオーバーライドして、カスタム ArrayObject の [] 演算子のデフォルトの動作を拡張しました。

以上が「オーバーロード」の概念と質問の表現を工夫した、考えられるタイトルをいくつか示します。 * PHP で演算子を「オーバーロード」できますか? (予期せぬ答え) * オペレートの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。