PHPシリアル化可能なインターフェース
はじめに
シリアル化可能 インターフェイスは、カスタマイズされたシリアル化を提供するクラスを構築するためにPHPライブラリに存在します。 PHPのserialize() 関数は、ほとんどの値を格納可能な表現にシリアル化できます。ただし、ユーザー定義クラスのオブジェクトはシリアル化できません。このインターフェースはそれを可能にします。
構文
Serializable { /* Methods */ abstract public serialize ( void ) : string abstract public unserialize ( string $serialized ) : void }
メソッド
Serializable ::serialize —オブジェクトの文字列表現
Serializable ::unserialize —シリアル化された文字列表現からオブジェクトを構築します
組み込みのserialze() 関数値の保存可能な表現を生成します
serialize ( mixed $value ) : string
unserialize() function保存された表現からPHP値を作成します
unserialize ( string $str [, array $options ] ) : mixed
シリアル化可能な例
次の例では、文字列変数がmyclassのプライベートプロパティとして使用されています。組み込みのserialize()関数がこのクラスのオブジェクトを引数として使用する場合、serialize()メソッドが自動的に呼び出されます。同様に、unserialize()関数は、文字列prvateプロパティを使用してオブジェクトを再構築します。
例
<?php class myclass implements Serializable { private $arr; public function __construct() { $this->arr = "TutorialsPoint India (p) Ltd"; } public function serialize() { echo "Serializing object..\n"; return serialize($this->arr); } public function unserialize($data) { echo "Unserializing object..\n"; $this->arr = unserialize($data); } public function getdata() { return $this->arr; } } $obj = new myclass; $serobj = serialize($obj); var_dump ($serobj); $obj1 = unserialize($serobj); var_dump($obj1->getdata()); ?>
出力
上記のプログラムは次の出力を示しています
Serializing object.. string(55) "C:7:"myclass":36:{s:28:"TutorialsPoint India (p) Ltd";}" Unserializing object.. string(28) "TutorialsPoint India (p) Ltd"
-
PHPのstrrev()関数
strrev()関数は、文字列を逆にするために使用されます。逆の文字列を返します。 構文 strrev(str) パラメータ str −反転する文字列 戻る strrev()関数は、逆の文字列を返します。 例 以下は例です- <?php echo strrev("Jack"); ?> 出力 以下は出力です- kcaJ 例 別の例を見てみましょう- <?php $val = 7837; echo strrev($val); ?> 出力 以下は出力です-
-
PHPのstrrchr()関数
strrchr()関数は、文字列内で最後に出現する文字を見つけるために使用されます。 構文 strrchr(str, char) パラメータ str −検索する文字列 char −文字列内で検索する文字。 charに複数の文字が含まれている場合は、最初の文字のみが使用されます。 戻る strrchr()関数は、別の文字列内で最後に出現した文字列からメイン文字列の最後までのすべての文字を返します。文字が見つからない場合はFALSEを返します。 例 以下は例です- 出力 web