ساخت یک id (عبارت منحصربفرد)، با تابع uniqid ، در PHP

با استفاده از تابع uniqid در PHP ، می توانیم یک id تولید کنیم. id ، یک عبارت (شامل عدد و حرف) منحصربفرد می باشد (البته گاهی منظور از id ، یک عدد منحصربفرد است، اما تابع uniqid ، یک عبارت منحصربفرد تولید می کند). تابع uniqid ، از زمان کنونی بر حسب میکروثانیه (microsecond) برای تولید عبارت منحصربفرد استفاده می نماید (چون هیچ دو زمانی، دارای عدد برابر نیستند، پس هیچ دو عبارت تولید شده توسط تابع uniqid ، برابر نخواهند بود، مگر اینکه هر دو در یک زمان اجرا شده باشند که در هنگام اجرای کدهای PHP یک فایل، امکان پذیر نیست. پس این تضمین وجود دارد که همیشه عبارت های تولید شده توسط uniqid ، منحصربفرد باشند).

نکته مهم

از تابع uniqid نباید برای تولید id های امنیتی استفاده کرد (یعنی id هایی که کسی نباید مقدار آنها را حدس بزند). زیرا این تابع برای تولید عبارت های (رشته های - Strings) تصادفی و غیرقابل حدس زدن به کار نمی رود. برای تولید id های امنیتی، از سایر توابع مرتبط با مفاهیم encryption و hash استفاده کنید.

نکته

شاید این مورد به ذهن شما برسد که در حالتی که این تابع در دو فایل مختلف، دقیقا در یک زمان مشخص اجرا شود، آنگاه دو عبارت یکسان تولید خواهد شد. اگر دو عبارت تولید شده در دو فایل، باید نسبت به یکدیگر نیز منحصربفرد باشند، تابع uniqid این امکان را فراهم می کند که یک پیشوند (prefix) برای id ها تعیین کنیم، بنابراین می توانید در آن دو فایل، دو پیشوند متفاوت را برای id ها در نظر بگیرید (برای تعیین پیشوند، در ادامه مبحث، مثالی ذکر شده است).

به مثال زیر توجه کنید :

مثال

نتیجه :

خطا - صفحه را دوباره بارگذاری کنید
نکته

چنانچه بخواهیم یک پیشوند (prefix) برای id در نظر بگیریم، باید عبارت مربوط به پیشوند را به ورودی تابع uniqid بدهیم. به مثال زیر توجه کنید :

مثال

نتیجه :

خطا - صفحه را دوباره بارگذاری کنید
نویسنده علیرضا گلمکانی
شماره کلید 3519
گزینه ها
به اشتراک گذاری (Share) در شبکه های اجتماعی
نظرات 2 2 0
http://academyit.net
۱۳۹۵/۰۶/۱۷
۰۴:۲۱

اموزش php عالی بود

مرسی از شما

علی
۱۴۰۱/۱۰/۱۵
۲۲:۵۲

عالیه

ارسال نظر جدید (بدون نیاز به عضو بودن در وب سایت)