phpってシリアライズできないんですか?

青灯夜游
リリース: 2023-03-15 20:26:01
オリジナル
1958 人が閲覧しました

php はシリアル化を実現できます。 PHP では、serialize() 関数を使用してシリアル化を実装し、「serialize (シリアル化する変数)」という構文で値を保存可能な文字列に変換できます。また、unserialize() 関数を使用して実装することもできます。逆シリアル化と再 - PHP で文字列を元の値に戻します。

phpってシリアライズできないんですか?

このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

いわゆるシリアル化とは、 a 変数を保存または転送できる文字列に変換するプロセス。逆シリアル化とは、この文字列を、使用する適切なタイミングで元の変数に変換することです。これら 2 つのプロセスを組み合わせることで、データの保存と送信の操作を簡単に完了できるため、プログラムの保守性が向上します。

php でもシリアル化を実現できます。

PHP では、serialize() 関数を使用してシリアル化を実装し、値を保存可能な文字列に変換できます。また、unserialize() 関数を使用して文字列を元の文字列に戻すこともできます。元の PHP の値、つまり逆シリアル化。

serialize() 関数の構文形式は次のとおりです。

serialize(mixed $value)
ログイン後にコピー

$value はシリアル化する変数です。

serialize() 関数は、リソースを除く任意の型を処理できます。オブジェクトをシリアル化するとき、PHP はシーケンス アクションの前にオブジェクトの __sleep() メンバー関数を呼び出します。これにより、オブジェクトがシリアル化される前にクリーンアップ操作を実行できるようになります。同様に、unserialize() を使用してオブジェクトが逆シリアル化されると、__wakeup() メンバー関数が呼び出されます。

[例] オブジェクトをシリアル化するには、serialize() 関数を使用します。

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
class WebSit{
    public $name;
    public $url;
    function __construct($name, $url){
        $this->name = $name;
        $this->url  = $url;
    }
}
$websit  = new WebSit(&#39;php中文网&#39;, &#39;https://www.php.cn/&#39;);
$ser_str = serialize($websit);
echo $ser_str;
?>
ログイン後にコピー

phpってシリアライズできないんですか?

拡張知識: 逆シリアル化

serialize() 関数を使用してオブジェクトをシリアル化すると、次のような保存を取得できます。文字列をファイルまたはデータベースに保存し、必要に応じて unserialize() 関数を使用して文字列を逆シリアル化します。 unserialize() 関数の構文形式は次のとおりです。 str は、serialize() 関数を使用してシリアル化された文字列です。受信文字列を逆シリアル化できない場合は、FALSE が返され、E_NOTICE が生成されます。

[例] 上記で取得した文字列をデシリアライズします。

unserialize(string $str)
ログイン後にコピー

推奨学習: 「phpってシリアライズできないんですか?PHP ビデオ チュートリアル

以上がphpってシリアライズできないんですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!