یکی از مشکلات برنامه نویسی فراموشی syntaxو سلسله مراتب توابع زبان برنامه نویسی می باشد.
شعار برنامه نویسی شی گرا "دنیا را آنچنان که هست برنامه نویسی کنیم" می باشد.
و phpبه مانند سایر زبان های برنامه نویسی سعی در مدل کردن برنامه ها،مطابق دنیای پیرامون می باشد که مدل کردن دنیای پیرامون در ساختار کامپیوتر را شی گرایی می گویند.
مفهوم شی:
مهمترین مولفه در برنامه نویسی شی گرا می باشد شی در برگیرنده ویژگی ها و رفتار های یک موجودیت می باشد.به عنوان مثال در یک buttonمی تواند یک شی باشد ای نشی هم ویژگی هایی دارد و هم رفتار.
اعضای یک شی:
شی از ترکیب ویژگی ها و رفتار ها (توابع) ایجاد شده است .تابع عضو یک شی را متد می گویند.که متغیر ها و متد ها را می توان در سه حوزه (seope)تعریف کرد.و حوزه دسترسی مشخص می کندکه اشیا دیگر می توانند به آن متغیر ها دسترسی داشته باشند یا نه؟ که در ادامه به بررسی این سه حوزه می پردازیم.
نحوه تعریف کلاس:
Class my_class
//my_class:نام کلاس
{
//محل تعریف متغیر ها و متدها
}
مثال عملی:
می خواهیم دراین بخش یک کلاسی تعریف کنیم که شامل یک سری متد ها و متغیر ها می باشد.
کاربر یک رشته ای را وارد می کند اگر داخل رشته علامت* بود به && تبدیل کند:
کد php:
/**
*in the name of allah
*author:reza_alie
*/
class myclass
{
function replace_str($str_input)
{
return str_replace('*', '&&', $str_input);//سه پارامتر می گیرد که اولی مقداری که می خواهیم به دنبال آن بگردیم و پارامتر دوم مقدار جایگزینی است و پارامتر سوم رشته ورودی می باشد str_replaceهمانطور که می دانید تابع
}
}
$myclass=new myclass();// برای درست کردن یک شی از یک کلاس از کلمه کلیدی new استفاده میکنیم
echo $myclass->replace_str("this *is *test");//برای دسترسی به متد های یک کلاس از علامت->استفاده می کنیم
/**
*
*output : this &&is &&test
*/