آموزش تابع Serialize() در php ، در این پست از تجاری اپ کار با تابع Serialize در php را به شما آموزش خواهیم داد. تابع Serialize() در php یک مقدار php را به صورت یک رشته قابل ذخیره سازی تبدیل میکند. داده های سریال (serialize) به معنی دنباله ای از بیت ها است که بتوان آن را در یک فایل یا یک حافظه بافر ذخیره کرد و یا از طریق لینک اتصال شبکه انتقال داد.این تابع برای ذخیره یا انتقال مقادیر php بدون از دست دادن نوع و ساختار آنها بسیار مفید می باشد.
همچنین بخوانید: آموزش نحوه تبدیل آرایه به json در php همراه با مثال
سینتکس تابع Serialize() را در زیر مشاهده می کنید:
serialize(value)
پارامتر value ضروری می باشد.
مثال زیر را مشاهده کنید:
<?php
$colors = ['Red', 'Blue', 'Green', 'yellow', 'pink'];
$serializeText = serialize($colors);
echo $serializeText."\n";
خروجی را در زیر مشاهده ی کنید:
php app.php
a:5:{i:0;s:3:"Red";i:1;s:4:"Blue";i:2;s:5:"Green";i:3;s:6:"yellow";i:4;s:4:"pink";}
بنابراین متن سریال شده (serialize) مانند بالا می باشد.این متن حالا می تواند در پایگاه داده ذخیره شود و زمانی که ما نیاز به نمایش داده ها در فرانت اند داشته باشیم می توانیم داده را unserialize() کنیم و دوباره به فرمت اصلی بازگردانیم.
در اینجا لازم است یک نکته را ذکر کنیم که بسیاری از اشیاء یا آبجکت های (objects) ساخته شده در php نمی توانند سریال (serialized) شوند.
سریال کردن (Serializing) اعداد اعشاری منجر به خطاهای عجیب و غریب می شود.
<?php
echo round(98.19210000000000002, 2)."\n";
echo serialize(round(98.19210000000000002, 2))."\n";
echo serialize(98.1921)."\n";
خروجی را در زیر مشاهده ی کنید:
php app.php
98.19
d:98.19;
d:98.1921;
همچنین بخوانید: آموزش تابع Array Push در php همراه با مثال | افزودن عناصر به آرایه
هر بار داده ها را قبل از ذخیره سازی داده ها در پایگاه داده serialize نکنید. زمانی از آن استفاده کنید که شما انتخاب دیگری ندارید زیرا گاهی اوقات می تواند باعث پیچیدگی کار شود. سریال کردن یا serialize می تواند برای ذخیره کردن داده ها استفاده شود اما نقطه ای از پایگاه داده رابطه ای و نوع داده های SQL در موتور پایگاه داده شما از بین می روند. انجام این کار باعث می شود که داده ها در پایگاه داده شما غیر قابل حمل شود و همچنین خواندن آنها سخت می شود و می تواند منجر به پیچیدگی کوئری ها شود.