پی اچ پی 7.1 و ویژگی های جدید

گردآوری و تالیف : حسام موسوی
تاریخ انتشار : 11 دی 1395
دسته بندی ها : برنامه نویسی

تقریبا یک ماه قبل پی اچ پی 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 رو برای شما توضیح بدم . 

مقالات پیشنهادی

فریم ورک های پی اچ پی

در دنیای آیتی و آی سی تی با گذر زمان و رشد علم و علوم ارتباطات ،برنامه نویسان و توسعه دهندگان پروژه های گوناگون به مجموعه ای از کتابخانه های گوناگون ک...

فریمورک پی اچ پی phalcon

با بروزرسانی و پیشرفت زبان برنامه نویسی php ، فریم ورک های زیادی منسوخ شدن همچنین خیلی از فریم ورک ها از پایه نوشته شدن تا از مزیت های جدید php عقب نم...

کتابخانه ی Requests for php

یکی دیگر از کتابخانه های php ، Requests است که در این مقاله قصد داریم به معرفی اجمالی و قدرت و توانایی های این کتابخانه در پیشبرد پروژه های php بپرداز...

کتابخانه پی اچ پی - Backpress

کتابخانه ی back press بر گرفته از خصوصیات قدرتمند هسته ی ورد پرس است و یکی از کتابخانه های کامل برای زبان قدرتمند php محسوب میشود. از ویژگی های این کت...