- سهشنبه 2 مرداد 1397 ساعت 14:51
- 3.1.9
- در حال تکمیل
- فعال
کدایگنایتر مجموعهای از فانکشنهای سازگاری را ارائه میدهد که به کمک آنها قادر خواهید بود از آن دسته از فانکشنهای نیتیو پیاچپی استفاده کنید که در ورژنهای بالاتر از ورژن نصب شده شما موجود هستند یا وابسته به اکستنشن خاصی هستند.
گرچه این فانکشنها نیز وابستگیهایی دارند، اما اگر این فانکشنها به صورت نیتیو در ورژن پیاچپی سرورتان وجود ندارد، استفاده از این فانکشنهای تعریف شده توسط کدایگنایتر مفید خواهد بود.
توجه
مشابه فانکشنهای عمومی، فانکشنهای سازگاری نیز مادامی که وابستگیهای آنها تامین شود، همیشه در دسترس خواهند بود.
هش کردن پسورد
این مجموعه از فانکشنها، بَکپورتی (backport) از اکستنشن Password Hashing است که از PHP 5.5 قابل استفاده است.
اصطلاحات فنی
پورت کردن یا سازگارسازی (Porting) فرآیند تطبیق نرمافزار به منظور اجرا در محیط پردازشی متفاوت از محیط پردازشی اصلی که برای آن طراحی شده، است. همچنین زمانی که نرمافزار/سختافزار تغییر داده میشود تا قابل استفاده در محیطهای مختلف باشد نیز این اصطلاح استفاده میشود. احتمالا اصطلاح پورت کردن را قبلا در مورد بازیهای کنسولهای مختلف یا رامهای گوشیهای هوشمند شنیدهاید.
نرمافزاری قابل پورت کردن است که هزینه پورت کردن آن برای یک پلتفرم جدید به طور قابل ملاحظهای کمتر از بازنویسی آن از ابتدا باشد.
بَکپورت (BackPort) عمل پورت کردن فیچرهای ورژن جدید یک نرمافزار به یک ورژن قدیمیتر است. بَک پورتینگ بخشی از مراحل نگهداری در فرآیند توسعه نرمافزار است و معمولا با هدف رفع مشکلات امنیتی در ورژنهای قدیمیتر نرمافزار و همچنین برای ارائه فیچرهای جدید به ورژنهای قدیمیتر انجام میشود.
وابستگیها
- PHP 5.3.7
- پشتیبانی از
CRYPT_BLOWFISH
توسط فانکشنcrypt()
ثابتها
PASSWORD_BCRYPT
PASSWORD_DEFAULT
رفرنس فانکشن
password_get_info($hash) |
|
پارامترها |
|
مقدار بازگشتی | اطلاعاتی درباره پسورد هش شده |
نوع مقدار بازگشتی | آرایه |
برای اطلاعات بیشتر لطفا به password_get_info() مراجعه کنید.
password_hash($password, $algo[, $options = array()]) |
|
پارامترها |
|
مقدار بازگشتی | پسورد هش شده یا FALSE در صورت شکست |
نوع مقدار بازگشتی | استرینگ |
برای اطلاعات بیشتر لطفا به password_hash() مراجعه کنید.
توجه
به جز در حالتی که Salt خود را (که معتبر نیز است) استفاده میکنید، این فانکشن یک وابستگی دیگر نیز به یک سورس قابل دسترس CSPRNG دارد. که هر کدام از موارد زیر قادر به برآورده کردن این نیاز هستند:
mcrypt_create_iv()
باMCRYPT_DEV_URANDOM
openssl_random_pseudo_bytes()
- /dev/arandom
- /dev/urandom
password_needs_rehash() |
|
پارامترها |
|
مقدار بازگشتی | اگر هش برای همخوانی (تطبیق ) با الگوریتم مشخص شده و آپشنهای این فانکشن، نیاز به هش شدن مجدد داشته باشد، TRUE برمیگرداند، در غیراینصورت FALSE برمیگرداند |
نوع مقدار بازگشتی | بولین |
برای اطلاعات بیشتر لطفا به password_needs_rehash() مراجعه کنید.
password_verify($password, $hash) |
|
پارامترها |
|
مقدار بازگشتی | اگر پسورد با هش مطابقت داشته باشد TRUE و در غیراینصورت FALSE |
نوع مقدار بازگشتی | بولین |
برای اطلاعات بیشتر لطفا به password_verify() مراجعه کنید.
هش (خلاصه پیام)
این لایه سازگاری دربردارندهی بَکپورتهایی برای فانکشنهای hash_equals()
و hash_pbkdf2()
است که روش دیگر برای دسترسی داشتن به این فانکشنها به ترتیب نیازمند PHP 5.6 و یا PHP 5.5 است.
وابستگیها
- نیاز به هیچ وابستگی ندارد.
رفرنس فانکشن
hash_equals($known_string, $user_string) |
|
پارامترها |
|
مقدار بازگشتی | اگر استرینگها با هم مطابقت داشته باشند TRUE و در غیراینصورت FALSE |
نوع مقدار بازگشتی | بولین |
برای اطلاعات بیشتر لطفا به hash_equals() مراجعه کنید.
hash_pbkdf2($algo, $password, $salt, $iterations[, $length = 0[, $raw_output = FALSE]]) |
|
پارامترها |
|
مقدار بازگشتی | کلید استخراج شده پسورد یا FALSE در صورت شکست |
نوع مقدار بازگشتی | استرینگ |
برای اطلاعات بیشتر لطفا به hash_pbkdf2() مراجعه کنید.
مولتیبایت استرینگ (Multibyte String)
این مجموعه از فانکشنهای سازگاری، پشتیبانی محدودی برای اکستنشن Multibyte String ارائه میدهند. با توجه به سولوشنهای جایگزین محدود، تنها چند فانکشن در دسترس هستند.
توجه
اگر پارامتر مربوط به character set حذف شود، از متغییر $config['charset']
موجود در فایل application\config\config.php استفاده میشود.
پیشنیازها
اکستنشن iconv
مهم
این وابستگی اختیاری است و این فانکشنها همیشه اعلان (declare) میشوند و قابل استفاده هستند. اگر اکستنشن iconv در دسترس نباشد، این فانکشنها از ورژن غیر مولتیبایتی خود (non-mbstring) استفاده میکنند.
مهم
هر جا که یک character set به کار گرفته شود، باید توسط iconv از آن پشتیبانی شود و در فرمتی باشد که iconv بتواند آن را شناسایی کند.
توجه
برای بررسی وابستگی بر روی اکستنشن mbstring، از ثابت MB_ENABLED
استفاده کنید.
رفرنس فانکشن
mb_strlen($str[, $encoding = NULL]) |
|
پارامترها |
|
مقدار بازگشتی | تعداد کاراکترهای استرینگ ورودی یا FALSE در صورت شکست |
نوع مقدار بازگشتی | استرینگ |
برای اطلاعات بیشتر لطفا به mb_strlen() مراجعه کنید.
mb_strpos($haystack, $needle[, $offset = 0[, $encoding = NULL]]) |
|
پارامترها |
|
مقدار بازگشتی | عددی که موقعیت اولین کاراکتری را نشان میدهد که استرینگ $needle در آن موقعیت یافت شود یا FALSE در صورت شکست |
نوع مقدار بازگشتی | استرینگ |
برای اطلاعات بیشتر لطفا به mb_strpos() مراجعه کنید.
mb_substr($str, $start[, $length = NULL[, $encoding = NULL]]) |
|
پارامترها |
|
مقدار بازگشتی | بخشی از استرینگ $str با توجه به مقادیر مشخص شده در پارامترهای $start و $length یا FALSE در صورت شکست |
نوع مقدار بازگشتی | استرینگ |
برای اطلاعات بیشتر لطفا به mb_substr() مراجعه کنید.
فانکشنهای استاندارد
این مجموعه از فانکشنهای سازگاری برای تعدادی از فانکشنهای استاندارد پیاچپی که برای اجرا به ورژن جدیدتری از پیاچپی نیاز دارند، به عنوان پشتیبان ارائه شدهاند.
وابستگیها
- نیاز به هیچ وابستگی ندارد.
array_column(array $array, $column_key[, $index_key = NULL]) |
|
پارامترها |
|
مقدار بازگشتی | آرایهای که مقادیر یک ستون از آرایه ورودی را نشان میدهد |
نوع مقدار بازگشتی | آرایه |
برای اطلاعات بیشتر لطفا به array_column() مراجعه کنید.
hex2bin($data) |
|
پارامترها |
|
مقدار بازگشتی | نمایش باینری دادههای داده شده |
نوع مقدار بازگشتی | استرینگ |
برای اطلاعات بیشتر لطفا به hex2bin() مراجعه کنید.
سایر پستهای داکیومنت
- به کدایگنایتر خوش آمدید
- نصب
- بررسی اجمالی
- شروع به استفاده از کدایگنایتر
- کدایگنایتر در یک نگاه
- فیچرهای کدایگنایتر
- فلوچارت اپلیکیشن
- مدل ویو کنترلر
- اهداف طراحی و معماری
- خودآموز
- مشارکت در کدایگنایتر
- نوشتن مستندات کدایگنایتر در صف ترجمه
- گواهی مبدأ توسعه دهنده 1.1 در صف ترجمه
- مباحث کلی
- URLها در کدایگنایتر
- کنترلرها
- نامهای رزرو شده
- ویوها
- مدلها
- هلپرفانکشنها
- استفاده از لایبرریهای کدایگنایتر
- ساخت لایبرری
- استفاده از درایورهای کدایگنایتر
- ساخت درایور
- ساخت کلاسهای هسته سیستم
- ساخت کلاسهای کمکی
- هوکها - توسعه هسته فریمورک
- بارگذاری خودکار ریسورسها
- فانکشنهای عمومی
- فانکشنهای سازگاری
- مسیریابی URI
- هندل کردن خطاها
- کش کردن صفحات وب
- ارزیابی و تجزیه و تحلیل عملکرد اپلیکیشن
- اجرای کدایگنایتر به وسیله خط فرمان
- مدیریت چندین اپلیکیشن
- هندل کردن محیطهای چندگانه
- سینتکس جایگزین PHP برای فایلهای ویو
- Security در صف ترجمه
- راهنمای کدنویسی در PHP
- لایبرریها در صف ترجمه
- کلاس بنچمارک
- درایور کش در صف ترجمه
- Calendaring Class در صف ترجمه
- Shopping Cart Class در صف ترجمه
- Config Class در صف ترجمه
- Email Class در صف ترجمه
- Encrypt Class در صف ترجمه
- Encryption Library در صف ترجمه
- File Uploading Class در صف ترجمه
- Form Validation در صف ترجمه
- FTP Class در صف ترجمه
- Image Manipulation Class در صف ترجمه
- Image Manipulation Class در صف ترجمه
- Javascript Class در صف ترجمه
- کلاس زبان
- Loader Class در صف ترجمه
- کلاس مایگریشن
- Output Class در صف ترجمه
- Pagination Class در صف ترجمه
- Template Parser Class در صف ترجمه
- Security Class در صف ترجمه
- Session Library در صف ترجمه
- HTML Table Class در صف ترجمه
- Trackback Class در صف ترجمه
- کلاس تایپوگرافی در صف ترجمه
- Unit Testing Class در صف ترجمه
- URI Class در صف ترجمه
- User Agent Class در صف ترجمه
- XML-RPC and XML-RPC Server Classes در صف ترجمه
- کلاس انکود کردن آرشیو Zip در صف ترجمه
- رفرنس دیتابیس در صف ترجمه
- شروع سریع دیتابیس: کد نمونه
- پیکربندی دیتابیس در صف ترجمه
- Connecting to your Database در صف ترجمه
- Queries در صف ترجمه
- Generating Query Results در صف ترجمه
- Query Helper Methods در صف ترجمه
- Query Builder Class در صف ترجمه
- Transactions در صف ترجمه
- Database Metadata در صف ترجمه
- فراخوانی سفارشی فانکشن
- Database Caching Class در صف ترجمه
- Database Forge Class در صف ترجمه
- Database Utility Class در صف ترجمه
- DB Driver Reference در صف ترجمه
- هلپرفانکشنها
- هلپرفانکشن Array
- هلپرفانکشن CAPTCHA در صف ترجمه
- هلپرفانکشن Cookie
- Date Helper در صف ترجمه
- هلپرفانکشن Directory
- Download Helper در صف ترجمه
- Email Helper در صف ترجمه
- File Helper در صف ترجمه
- هلپرفانکشن Form در صف ترجمه
- HTML Helper در صف ترجمه
- Inflector Helper در صف ترجمه
- هلپرفانکشن Language
- هلپرفانکشن Number
- Path Helper در صف ترجمه
- Security Helper در صف ترجمه
- Smiley Helper در صف ترجمه
- هلپرفانکشن String
- Text Helper در صف ترجمه
- Typography Helper در صف ترجمه
- URL Helper در صف ترجمه
- XML Helper در صف ترجمه