استفاده از کتابخانه SweetAlert2 با AJAX در لاراول
کتابخانه SweetAlert2 استفاده از SweetAlert2 با AJAX در لاراول
2019-05-18
آموزش رتروفیت Retrofit
رتروفیت | آموزش Retrofit همراه با مثال
2019-05-21

آموزش تابع Serialize() در php به همراه مثال

آموزش تابع Serialize() در php به همراه مثال

آموزش تابع Serialize() در php به همراه مثال

آموزش تابع Serialize() در php ، در این پست از تجاری اپ کار با تابع Serialize در php را به شما آموزش خواهیم داد. تابع Serialize() در php یک مقدار php را به صورت یک رشته قابل ذخیره‌ سازی تبدیل میکند. داده های سریال (serialize) به معنی دنباله ای از بیت ها است که بتوان آن را در یک فایل یا یک حافظه بافر ذخیره کرد و یا از طریق لینک اتصال شبکه انتقال داد.این تابع برای ذخیره یا انتقال مقادیر php بدون از دست دادن نوع و ساختار آنها بسیار مفید می باشد.

مثالی از آموزش کار با تابع Serialize() در 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) اعداد اعشاری

سریال کردن (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;

چرا از تابع Serialize() استفاده نکنید؟

هر بار داده ها را قبل از ذخیره سازی داده ها در پایگاه داده serialize نکنید. زمانی از آن استفاده کنید که شما انتخاب دیگری ندارید زیرا گاهی اوقات می تواند باعث پیچیدگی کار شود. سریال کردن یا serialize می تواند برای ذخیره کردن داده ها استفاده شود اما نقطه ای از پایگاه داده رابطه ای و نوع داده های SQL در موتور پایگاه داده شما از بین می روند. انجام این کار باعث می شود که داده ها در پایگاه داده شما غیر قابل حمل شود و همچنین خواندن آنها سخت می شود و می تواند منجر به پیچیدگی کوئری ها شود.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *