تقریبا یک ماه قبل پی اچ پی 7.1 بصورت نهایی ارائه شد و حالا توسعه دهنده ها میتونن از اون در پروژه های خودشون استفاده کنن . در این نسخه جدید ، ویژگی های تازه ای به PHP اضافه شده مثل Nullable types ، Void return type ، Class constant Visibility و ... . که در این پست قصد دارم یه نگاه سریع به سه تا از مهمترین ویژگی های اضافه شده به php 7.1 داشته باشم .
Nullable types
function answer(): ?int {
return null; //ok
}
function answer(): ?int {
return 42; // ok
}
function answer(): ?int {
return new stdclass(); // error
}
این ویژگی به این صورت عمل میکنه که شما در کنار و قبل نوع داده چه برگشتی چه ورودی اگر از علامت سوال استفاده کنید مقدار اون میتونه null باشه . مثال بالا دقیق نشون دهنده همین موضوع است .
Void Return Type
همینطور که از عنوان هم مشخصه شما میتونید بسادگی توابع Void تعریف کنید ، یعنی توابعی که چیزی رو بر نمیگردونن و فقط یک کاری رو داخل خودشون انجام میدن ، به مثال زیر دقت کنید هر چهار تابع از نوع Void هستن اما در مثال اول و آخر سعی شده مقداری برگشت داده بشه حتی اون مقدار null باشه که این تلاش با ارور مواجه شده . در مثال دوم شما عملا از return استفاده نمیکنید و این خودش نشون دهنده void بودن تابع اس و در مثال سوم درسته که از return استفاده میشه اما هیچ مقداری حتی null هم برگشت داده نمیشه که این موضوع اروری هم ایجاد نمیکنه .
function should_return_nothing(): void {
return 1; // Fatal error: A void function must not return a value
}
function lacks_return(): void {
// valid
}
function returns_nothing(): void {
return; // valid
}
function returns_null(): void {
return null; // Fatal error: A void function must not return a value
}
Class constant Visibility
خوب شما از این نسخه به بعد میتونید برای ثابت های که درکلاس تعریف میکنید سطح دسترسی مشخص کنید . به مثال زیر دقت کنید کاملا میتونید مفهوم این موضوع رو متوجه بشید .
class Token {
// Constants default to public
const PUBLIC_CONST = 0;
// Constants then also can have a defined visibility
private const PRIVATE_CONST = 0;
protected const PROTECTED_CONST = 0;
public const PUBLIC_CONST_TWO = 0;
//Constants can only have one visibility declaration list
private const FOO = 1, BAR = 2;
}
امیدوارم این پست مورد استفاده شما قرار گرفته باشه سعی میکنم حتما در یک پست دیگه خصوصیات بیشتری از PHP 7 و PHP 7.1 رو برای شما توضیح بدم .
دیدگاه و پرسش
در حال دریافت نظرات از سرور، لطفا منتظر بمانید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید