- چهارشنبه 6 تیر 1397 ساعت 02:04
- 3.1.9
- کامل شده
- منقضی شده
کدایگنایتر از تعادی فانکشن برای عملیات داخلی خود استفاده میکند که به صورت گلوبال تعریف شدهاند، و در همه جای اپلیکیشن در دسترس هستند. استفاده از این فانکشنها نیاز به لود هیچ لایبرری یا هلپری ندارد.
is_php($version) |
|
| پارامترها |
|
| مقدار بازگشتی | در صورتی که ورژن PHP در حال اجرا حداقل ورژن مشخص شده باشد TRUE و در غیر اینصورت FALSE |
| نوع مقدار بازگشتی | بولین |
مشخص میکند که آیا ورژن PHP در حال استفاده، بزرگتر از شماره ورژن ساپورت شده است.
مثال:
if (is_php('5.3'))
{
$str = quoted_printable_encode($str);
}
نوع مقدار بازگشتی بولین است، در صورتی که ورژن PHP نصب شده بزرگتر یا مساوی با ورژن ساپورت شده باشد، مقدار TRUE برمیگرداند و اگر کمتر باشد FALSE برمیگرداند.
is_really_writable($file) |
|
| پارامترها |
|
| مقدار بازگشتی | در صورتی که مسیر پرمیشن نوشتن داشته باشد TRUE و در غیر اینصورت FALSE |
| نوع مقدار بازگشتی | بولین |
فانکشن is_writable() روی سرورهای ویندوز حتی هنگامی که واقعا نمیتوانید بنویسید نیز TRUE برمیگرداند، در نتیجه تنها هنگامی FALSE برمیگرداند که خاصیت read-only فایل تیک خورده باشد.
فانکشن is_really_writable() ابتدا سعی میکند با نوشتن در یک فایل، مشخص کند که آیا آن فایل واقعا قابل نوشتن است یا خیر. به طور کلی، استفاده از این فانکشن تنها در پلتفرمهایی توصیه میشود که اطلاعات بازگشتی سیستم قابل اعتماد نیستند.
مثال:
if (is_really_writable('file.txt'))
{
echo "I could write to this if I wanted to";
}
else
{
echo "File is not writable";
}
توجه
برای اطلاعات بیشتر باگ شماره 54709 پیاچپی را ببینید.
config_item($key) |
|
| پارامترها |
|
| مقدار بازگشتی | مقدار کلید کانفیگ یا در صورت پیدا نشدن NULL |
| نوع مقدار بازگشتی | mixed (بیش از یک نوع ممکن است.) |
گرچه لایبرری Config روش بهتری برای دسترسی به اطلاعات کانفیگ است، فانکشن config_item() نیز میتواند برای دریافت کلیدهای تک استفاده شود. برای اطلاعات بیشتر لایبرری Config را ببینید.
set_status_header($code[, $text = '']) |
|
| پارامترها |
|
| مقدار بازگشتی | ندارد |
امکان تنظیم دستی هدر وضعیت سرور را میدهد. مثال:
set_status_header(401);
// Sets the header as: Unauthorized
لیست کامل هدرها
remove_invisible_characters($str[, $url_encoded = TRUE]) |
|
| پارامترها |
|
| مقدار بازگشتی | متن فیلتر شده |
| نوع مقدار بازگشتی | استرینگ |
این فانکشن از وارد شدن کاراکترهای NULL بین کاراکترهای ASCII جلوگیری میکند، مانند Java\0script.
مثال:
remove_invisible_characters('Java\\0script');
// Returns: 'Javascript'
html_escape($var) |
|
| پارامترها |
|
| مقدار بازگشتی | استرینگ HTML که escape شده است |
| نوع مقدار بازگشتی | mixed (بیش از یک نوع ممکن است.) |
این فانکشن به عنوان اسم مستعار فانکشن htmlspecialchars() عمل میکتد، البته مزیت استفاده از این فانکشن این است که این فانکشن علاوه بر استرینگ، آرگومان نیز قبول میکند.
کاربرد این فانکشن در جلوگیری از حملات XSS است.
get_mimes() |
|
| مقدار بازگشتی | یک آرایه انجمنی حاوی نوعهای فایل |
| نوع مقدار بازگشتی | آرایه |
این فانکشن یک رفرنس به آرایه MIME TYPEها واقع در دایرکتوری application/config/mimes.php را برمیگرداند.
اصطلاحات فنی
MIME TYPE نوع فایل را مشخص میکند، در واقع هر فایل یک MIME TYPE دارد که به مرورگر میگوید که این فایل چه نوع فایلی است، عکس (image/jpeg) است، پیدیاف (application/pdf) است یا هر چیز دیگری.
is_https() |
|
| مقدار بازگشتی | اگر از پروتکل HTTPS استفاده میشود، TRUE و در غیر اینصورت FALSE برمیگرداند |
| نوع مقدار بازگشتی | بولین |
اگر یک اتصال امن (HTTPS) استفاده شود، TRUE و در غیر اینصورت و برای هر اتصالی (شامل ریکوئستهای غیر HTTP) مقدار FALSE برمی گرداند.
is_cli() |
|
| مقدار بازگشتی | اگر توسط کامندلاین اجرا شده باشد، TRUE و در غیر اینصورت FALSE برمیگرداند |
| نوع مقدار بازگشتی | بولین |
اگر اپلیکیشن از طریق کامندلاین اجرا شده باشد TRUE برمیگرداند و درغیر اینصورت FALSE برمی گرداند.
توجه
این فانکشن بررسی می کند که آیا مقدار PHP_SAPI برابر است cli یا آیا ثابت STDIN تعریف شده است یا خیر.
function_usable($function_name) |
|
| پارامترها |
|
| مقدار بازگشتی | اگر فانکشن قابل استفاده باشد TRUR و در غیر اینصورت FALSE برمیگرداند |
| نوع مقدار بازگشتی | بولین |
اگر فانکشن مورد نظر تعریف شده و قابل استفاده باشد، TRUE برمیگرداند، در غیراینصورت FALSE برمیگرداند.
این فانکشن، فانکشن function_exists() را اجرا می کند و اگر اکستنشن Suhosin لود شده باشد، بررسی میکند که فانکشن را غیرفعال نکرده باشید.
هر وقت که بخواهید بررسی کنید که فانکشن هایی از قبیل eval() و exec() در دسترس هستند یا نه، این فانکشن کاربردی و مفید است. فانکشن های eval() و exec() خطرناک هستند و بر روی سرورهای با سیاست های امنیتی خیلی محدودکننده باید غیرفعال باشد.
توجه
این فانکشن به این دلیل معرفی شده است که Suhosin به اجرای اسکریپت خاتمه داده است، اما مشخص شد که این یک باگ است. زمانی (ورژن 0.9.34) یک پچ برای این باگ موجود بود، اما متاسفانه هنوز منتشر نشده است.