آموزش کامل PHP – قسمت 31: شئ گرایی 4

در این جلسه از آموزش php با پردیس وردپرس به بخش پایانی شئ گرایی در php می پردازیم.

مرحله‌ی هجدهم:

ارث بری یا استفاده مجدد از کدهای نوشته شده با ساختار OOP

ارث‌بری یکی از قابلیت‌های اساسی در برنامه‌نویسی شیءگرا محسوب می‌شود و با استفاده از آن می‌توان از یک کلاس به عنوان ساختار پایه برای کلاس‌های دیگر بهره برد. این عمل به شما اجازه می‌دهد تا به صورت بهینه‌تری از کدهای نوشته‌ شده‌ی قبلی خود و نیز کدهای نوشته شده توسط دیگران، استفاده کنید.

فرض کنید که قصد ایجاد یک کلاس جدید به نام employee (کارمند) را دارید. از آنجا که هر کارمند یک شخص است، بنابراین این دو می‌توانند پروپرتی‌ها و متدهای مشترکی داشته باشند.

با استفاده از ویژگی‌های ارث‌بری می‌توانید کد کمتر و بهینه‌تری را تولید کنید چراکه فقط موارد اضافه را باید به کلاس جدید اضافه کنید و در واقع می‌توان از ویژگی‌های یک کلاس دیگر به منظور ساخت کلاس جدید بهره گرفت. دو عامل زیر از جمله دلایلی تلقی می‌شوند که باعث شده استفاده از ارث‌بری در کلاس‌های پی‌اچ‌پی منطقی به نظر برسد:

  1. شما فقط یک بار باید کد مورد نظرتان را بنویسید.
  2. کد اولیه و اصلی مجددا استفاده خواهد شد و می‌توان از آن در هر تعداد کلاس دیگر، استفاده کرد.

از نظر مفهومی ارث‌بری شبیه به عملیات Include کردن است که در جلسات قبل به صورت مفصل آن را توضیح داده بودیم. به کد زیر توجه کنید:

// 'extends' is the keyword that enables inheritance
class employee extends person 
{
	function __construct($employee_name) {
		$this->set_name($employee_name);
	}
}

مرحله‌ی نوزدهم:

از آنجا که کلاس employee بر پایه‌ی کلاس person ایجاد شده است، بنابراین کلاس employee به طور خودکار تمامی متدهای عمومی و محافظت‌شده‌ و نیز تمامی پروپرتی‌های عمومی و محافظت‌شده‌ی کلاس person را دارا خواهد بود. به عبارت دیگر می‌توان گفت که کلاس employee در واقع نوعی دیگر از کلاس person است. به کد نمونه‌ی فوق توجه کنید تا مطلب بیان شده را بهتر درک کنید.

اما چگونه بدون اینکه متد ()set_name در کلاس employee تعریف شده باشد ما قادر به استفاده از آن خواهیم بود؟

ما قبلا متد ()set_name را در کلاس person تعریف کرده بودیم و با توجه به ویژگی‌ ارث‌بری در پی‌اچ‌پی، کلاس جدید می‌تواند از متدهای عمومی و محافظت‌شده‌ی کلاس پایه استفاده کند.

کلاس person در اینجا کلاس پایه یا کلاس والد خوانده می‌شود زیرا کلاس جدیدی که به نام employee ساختیم، به عنوان ساختار پایه از کلاس person بهره گرفته است. سسله مراتب همیشه در پروژه‌های مختلف پی‌اچ‌پی یک موضوع مهم است که باید به آن توجه ویژه داشته باشید. این امر به ویژه وقتی که پروژه‌ی شما پیچیده‌تر می‌شود بسیار کارا خواهد بود.

مرحله‌ی بیستم:

همانطور که در کد زیر نیز مشاهده می‌کنید، می‌توانیم متد get_name را در کلاس employee فراخوانی کنیم. کد زیر یک مثال بسیار خوب برای فهم بیشتر این مبحث است:

<?phpinclude("class_lib.php"); ?>
	<?php
		// Using our PHP objects in our PHP pages. 
		$mohammad = new person("mohammad safari");
		echo "mohammad's full name: " . $mohammad->get_name();
 
		$ali = new employee("ali safari");
		echo "---> " . $ali->get_name();
	?>

در مثال بالا روش استفاده‌ی مجدد از کدهای نوشته شده با ساختار OOP را مشاهده می‌کنید. یعنی شما دیگر نیازی به نوشتن مجدد برخی از متدها نخواهید داشت و می‌توانید از متدهای کلاس پایه یا والد، بهره ببرید. این روش باعث می‌شود تا کد نوشته‌ شده‌ی شما به اصطلاح ماژولار شده و قابلیت توسعه و پیشرفت دادن آن بیشتر شود. همچنین ساختار کدها منسجم‌تر شده و نیاز به نوشتن کد کمتری خواهید داشت.

مرحله‌ی بیست‌ویک:

اووِر راید کردن متدها

برخی مواقع هنگام استفاده از ویژگی ارث‌بری، ممکن است نیاز به تغییر برخی از توابع کلاس پایه داشته باشید. به عنوان مثال، اجازه دهید متد ()set_name در کلاس employee را تغییر دهیم به نحوی که این متد در این کلاس نسبت کلاس person تغییر یابد. در این شرایط شما با تعریف کردن متدی مشابه در کلاس employee، در واقع نسخه‌هایی از متد ()set_name را از کلاس person، اووِر راید کرده‌اید. به کد زیر توجه کنید:

<?php
	class person 
	{
		protected function set_name($new_name) {
			if ($new_name != "Mohammad Two") {
				$this->name = strtoupper($new_name);
			}
		}
	} 
 
	class employee extends person 
	{
		protected function set_name($new_name) {
			if ($new_name == "mohammad safari") {
				$this->name = $new_name;
			}
		}
	}
?>

توجه داشته باشید که متد ()set_name اکنون و پس از تغییرات بالا در کلاس جدید employee با همین متد در کلاس پایه با همان person تفاوت دارد.

مرحله‌ی بیست‌ودوم:

گاهی ممکن است نیاز داشته باشید تا به نسخه‌ی اصلی متدی در کلاس پایه دسترسی داشته باشید که آن را در کلاس جدید اوور راید کرده‌اید. در مثال ما، متد ()set_name در کلاس employee اوور راید شده است. حالا قصد داریم از کد زیر استفاده کنیم:

person::set_name($new_name);

به منظور دسترسی به نسخه‌ی اصلی متد ()set_name که در کلاس والد (person) وجود دارد، باید از کدی شبیه به زیر استفاده کنیم:

<?php
	class person 
	{
		// explicitly adding class properties are optional - but 
		// is good practice
		var $name;	 
		function __construct($persons_name) {
			$this->name = $persons_name;
		 }
 
		 public function get_name() {
		 	return $this->name;
		 }
 
		 // protected methods and properties restrict access to 
		 // those elements.
		 protected function set_name($new_name) {
		 	 if ($this->name !=  "Mohammad Two") {
		 	 	$this->name = strtoupper($new_name);
		 	 } 
		}
	} 
 
	// 'extends' is the keyword that enables inheritance
	class employee extends person 
	{
		protected function set_name($new_name) {
		if ($new_name ==  "Stefan Sucks") {
			$this->name = $new_name;
		}
	 	else if ($new_name ==  "Johnny Fingers") {
			person::set_name($new_name);
		} 
	}
 
	function __construct($employee_name) 
	{
		$this->set_name($employee_name);
	}
}
?>

 استفاده از سیمبل‌ها (symbol)

استفاده از :: برای تشخیص نام کلاسی که قصد داریم از متدهای داخلی آن استفاده کنیم به کار می‌رود. به مثال زیر توجه کنید تا این مبحث را بیشتر توضیح دهیم:

'person::set_name()'

کد بالا به پی‌اچ‌پی می‌گوید که به دنبال متد ()set_name در کلاس person بگردد. علاوه بر این یک راه میانبر دیگر برای اشاره به کلاس والد کلاس کنونی وجود دارد. این راه میانبر در واقع استفاده از کلمه‌ی کلیدی parent است. به کد نمونه‌ی زیر توجه کنید:

protected function set_name($new_name) 
{	
	if ($new_name ==  "mohammad safari") {
		$this->name = $new_name;	
	 }	
	 else if ($new_name ==  "ali safari") {
		parent::set_name($new_name);	
	}	
}

 

آموزش جاوا اسکریپت – قسمت سوم: افزودن فایل جاوا اسکریپت مجزا به صفحه

در ادامه جلسه قبل در این قسمت یاد می گیریم که چگونه از یک فایل جاوا اسکریپت مجزا در صفحه html خود استفاده کنیم.

افزودن فایل جاوا اسکریپت مجزا به صفحه

روش دوم برای اجرای کدهای جاوا اسکریپت، آن است که اصلا کدهای جاوا اسکریپت خود را درون صفحه HTML ننویسید. برای این کار باید یک فایل مجزا با پسوند js. برای کدهای جاوا اسکریپت ایجاد کنید. این روش باعث منظم شدن کدها و در اختیار داشتن آن‌ها در یک‌جا می‌شود و توسعه و نگهداری کدها را نیز آسان‌تر می‌کند.

برای این کار مراحل زیر را دنبال کنید:

  •  یک صفحه HTML ایجاد کنید. آن را با نام دلخواه (مثلا pardiswp.html) ذخیره کنید.
  • یک فایل جدید ایجاد و آن را با پسوند js ذخیره کنید. نام آن را می‌توانید app.js بگذارید.
  •  حالا برای اینکه این فایل جاوا اسکریپت و فایل HTML را به یکدیگر وصل کنیم باید فایل جاوا اسکریپت را در HTML خود صدا بزنیم؛ برای این کار از تگ script استفاده می‌کنیم. با این تفاوت که این بار به جای نوشتن کدها بین آن، آدرس فایل جاوا اسکریپتی خود را به صورت می‌دهیم.

<script type=”text/javascript” src=”/app.js”></script>

کلمه “type=”text/javascrip به مرورگر ما می‌فهماند که در حال نوشتن چه نوع فایلی هستیم. کلمه src نیز آدرس فایل جاوا اسکریپت ما را بیان می‌کند.

روش‌های آدرس دهی به فایل‌های جاوا اسکریپت

به طور کلی برای وارد کردن هر فایل خارجی به صفحه HTML (خواه فایل سی‌اس‌اس، عکس یا … باشد) باید آدرس دقیق آن را به تگ مربوطه اضافه نمایید. برای مثال در اتریبیوت src در تگ img شما باید آدرس دقیق عکس را وارد کنید تا عکس شما نمایش داده شود. جاوا اسکریپت و هر منبع خارجی دیگر نیز از این قاعده مستثنی نیستند و برای استفاده در صفحه باید از آدرسی که به تگ آن‌ها می‌دهیم بارگزاری شوند.

برای آدرس دادن به فایل‌ها دو راه وجود دارد:

راه اول: اضافه کردن آدرس دقیق فایل در فضای وب (مثلا http://pardiswp.com/sample-js-file.js) است. همانطور که مشخص است در این روش نیاز به چیز خاصی ندارید؛ تنها چیزی که نیاز دارید آدرس دقیق فایل در اینترنت است.

راه دوم: راه صحیح‌تر آن است که به جای هر بار وارد کردن آدرس دقیق یک فایل در اینترنت، تمامی فایل‌های خود را در یک پوشه قرار دهید و سپس برای مسیردهی آن از آدرس همان پوشه استفاده کنید. این پوشه ریشه نام دارد که منبع و نقطه شروع آدرس‌دهی به باقی فایل‌ها نیز خواهد بود.

نکته: با استفاده از علامت / به ابتدای آدرس می توانیم آدرس‌دهی را از فولدر ریشه شروع کنیم و با استفاده از /.. می توانیم در آدرس دهی به عقب برگردیم.

افزونه جعبه های محتوا برای ویژوال کامپوزر

جعبه های محتوا برای ویژوال کامپوزر

برای نمایش مطالب، ویژگی ها، خدمات و محصولات وب سایت راه های مختلفی وجود دارد. این افزونه در کنار پلاگین قدرتمند ویژوال کامپوزر به شما امکان ساخت انواع جعبه های مختلف با طرح های فوق العاده را می دهد. شما می توانید از 22 طرح مختلف این افزونه در عرض چند ثانیه برای ساخت صفحات زیبای وب سایت خود استفاده کنید. افزونه قابلیت سفارشی سازی بالایی در اختیار شما قرار می دهد.

با این افزونه به راحتی بهترین انواع صفحات را برای سایت خود بسازید

ویژگی جعبه محتوای ویژوال کامپوزر

ویژگی های افزونه

  • سازگاری کامل با ویژوال کامپوزر
  • 22 جعبه محتوای مختلف
  • کاملا ریسپانسیو
  • رنگ های ویژه
  • فیلد های قابل ویرایش
  • بیش از 1000 آیکون
  • CSS3
  • جعبه محتوای چندگانه در یک صفحه
  • قدرت نامحدود در صفحه سازی
  • امکانات بیشتر برای ویژوال کامپوزر

m f c b 1

m f c b 6

m f c b 11

m f c b 12

m f c b 13

m f c b 15

 m f c b 21

m f c b 16

m f c b 17

m f c b 22

m f c b 20

m f c b 14

m f c b 25

افزونه را در کنار صفحه ساز ویژوال کامپوزر نصب کنید

 

قالب html فروشگاهی AllStore

قالب فروشگاهی AllStore یک قالب html حرفه ای برای سایت های فروشگاهی آنلاین و بر پایه ecommerce با طراحی استاندارد است. این قالب کاملا ریسپانسیو با قابلیت سفارشی سازی بالا و استفاده آسان است. با استفاده از این قالب می توانید به راحتی و بدون صرف وقت اضافی انواع سایت های فروشگاهی حرفه ای را راه اندازی کنید. قالب با استفاده از تکنولوژی های مدرن html5 و css3 ساخته شده است. همچنین قالب از طراحی بسیار زیبا و بروز با امکانات کامل و کاربر پسند برخوردار است.

قالب allstore

ویژگی های قالب:

  • 5 طرح مختلف کاتالوگ
  • 2 طرح مختلف محصول
  • 2 نوع مختلف وبلاگ
  • عناصر صفحه ساز
  • کاملا ریسپانسیو
  • رابط کاربری عالی
  • فرم تماس آماده
  • پرفکت پیکسل
  • سئو فرندلی
  • لودینگ سریع
  • سفارشی سازی بالا
  • کد نویسی بهینه
  • همراه با فایل راهنمای استفاده از قالب

 

آموزش کامل PHP – قسمت 30: شئ گرایی 3

در ادامه جلسه قبل در این قسمت نیز به شئ گرایی در php می پردازیم.

مرحله دوازدهم:

دسترسی مستقیم به پروپرتی‌ها (که توصیه نمی‌شود)

برای دسترسی مستقیم به خواص اشیاء ساخته شده در پی‌اچ‌پی، نیازی به استفاده از متدها ندارید. شما می‌توانید به طور مستقیم با استفاده از عملگر <- و نام متغیر (پروپرتی) مورد نظر، به آن دسترسی داشته باشید. به عنوان مثال اگر در کلاس پی‌اچ‌پی نوشته شده‌ی خود، یک پروپرتی به نام name$ (در شیء mohammad$) داشته باشید، برای دسترسی به مقدار این متغیر باید از کدی مثل زیر استفاده کنید:

$name = $mohammad->name;

البته همانطور که اشاره کردیم، استفاده از این روش پیشنهاد نمی‌شود چراکه امکان دارد در ادامه مسیر، با مشکلاتی مواجه شوید. برای دسترسی به مقادیر متغیرها (پروپرتی‌ها) در یک کلاس پی‌اچ‌پی، بهتر است از متدهای دریافت‌کننده یا getter استفاده کنید. برای درک بیشتر به کد زیر توجه کنید:

<?php include("class_lib.php"); ?>		
<?php 
	$mohammad = new person();		
	$reza = new person();
 
	$mojtaba->set_name("mohammad safari");
	$reza->set_name("reza safari");	
 
	// دسترسی مستقیم به مقدار یک پروپرتی در کلاس که پیشنهاد نمی شود
	echo "mohammad's full name: ".$mohammad->name;
?>

مرحله سیزدهم:

سازنده ها (constructor)

در تمامی کلاس‌های پی‌اچ‌پی می‌توان متدهایی موسوم به کانستراکتور را تعریف کرد که در واقع یک متد داخلی آن کلاس محسوب می‌شود. کانستراکتورها به شما اجازه می‌دهند تا خواص مورد نظر کلاس خود را تعریف کنید. بدین وسیله به محض ساختن و فراخوانی چنین کلاسی، متد کانستراکتور آن کلاس به صورت خودکار اجرا خواهد شد.

نکته: اگر تابعی به نام ()constructــ در کلاس مورد نظرتان بسازید، پی‌اچ‌پی به طور خودکار متد (تابع) ()constructــ را پس از ساختن هر شیء و در واقع پس از اجرای کلاس، فراخوانی می‌کند.

به یاد داشته باشید که برای تعریف کانستراکتور در ابتدای نام آن باید دو علامت آندراسکور (آندرلاین ــ) قرار دهید و بدون هیچ فاصله‌ یا کاراکتر اضافه‌ای، کلمه‌ی construct را در ادامه‌ی نام آن بنویسید. برای درک بیشتر موضوع، به کد زیر توجه کنید:

<?php 		
	class person {
		var $name;
		function __construct($persons_name) {		
			$this->name = $persons_name;		
		}		
 
		function set_name($new_name) {
		 	 $this->name = $new_name;
		}	
 
		function get_name() {		
		 	 return $this->name;		
		 }		
 
	}	 	
?>

از حالا به بعد به منظور پیش‌برد راحت‌تر و یکپارچه‌تر مبحث شی‌ءگرایی در پی‌اچ‌پی، هر جا صحبت از متد شد منظور ما تابع داخل کلاس و هرجا از پروپرتی‌ها سخن گفتیم، منظور ما همان متغیرهای کلاس هستند.

مرحله چهاردهم:

ساختن یک کلاس (شیء) مجهز به کانستراکتور

حالا که ما با نحوه‌ی ساختن کانستراکتور آشنا شده‌ایم، می‌توانیم برای ساخت کلاس person، مقداری را به عنوان پیش‌فرض برای پروپرتی name$ مشخص کنیم. شما می‌توانید ورودی‌های مختلفی را به صورت آرگومان‌، برای متد کانستراکتور تعیین کنید. اگر با این موضوع آشنایی ندارید بد نیست سری به بخش آموزش توابع در پی‌اچ‌پی بزنید که پیش‌تر آن را در سایت منتشر کرده‌ایم. برای افزودن ورودی به کانستراکتور، باید پس از استفاده از یک شیء ورودی‌ها را در داخل پرانتز و پس از نام کلاس مورد نظر، وارد کنیم. به عنوان مثال به کد زیر توجه کنید:

$mohammad = new person("mohammad safari");

استفاده از کانستراکتور و مقدار دهی ورودی مورد نیاز آن باعث شد تا دیگر نیازی به فراخوانی متد ()set_name نداشته باشیم که همین کار باعث می‌شود با نوشتن کد کمتر، بتوان پروژه‌های مسنجم‌تری را ساخت. استفاده از کانستراکتورها همانند سایر زبان‌ها نظیر جاوا و … در بین برنامه‌نویسان این زبان، رایج است. باز هم توجه شما را به مثال زیر جلب می‌کنیم:

<?php include("class_lib.php"); ?>		
<?php 
	$mohammad = new person("mohammad safari");
	echo "mohammad's full name: ".$mohammad->get_name();
?>

استفاده از مکانسیم شی‌ءگرایی در مثال بالا، یکی از کاربردهای بسیار ساده‌ای است که می‌تواند در زمان و انرژی شما در کدنویسی صرفه‌جویی قابل توجهی کند.

مرحله پانزدهم:

محدود کردن دسترسی به پروپرتی‌ها با اصلاح‌کننده‌های دسترسی

یکی از اصول بنیادی در برنامه‌نویسی شیءگرا، کپسوله‌سازی (encapsulation) است. اگر قصد دارید تا دسترسی به پروپرتی‌های مختلف را در کلاس خود محدود کنید، این ایده به شما کمک می‌کند تا کد خوانا‌تر و بهتری را تولید کنید.

برای محدود کردن دسترسی به پروپرتی‌های کلاس خود، باید از اصلاح‌کننده‌های دسترسی (ٰaccess modifiers) استفاده کنید. در پی‌اچ‌پی نیز مثل بسیاری از زبان‌های خانواده‌ی سی، ۳ عدد اصلاح‌کننده دسترسی موجود است:

  1. public (عمومی)
  2. private (خصوصی)
  3. protected (محافظ شده)

اصلاح‌کننده‌ی پیش‌فرض برای هر پروپرتی در هر کلاس در پی‌اچ‌پی، Public است. به مثال زیر توجه کنید:

<?php 		
	class person {		
	var $name;		
		public $height;		
		protected $social_insurance;
		private $pinn_number;
 
		function __construct($persons_name) {		
			$this->name = $persons_name;		
		}		
 
		function set_name($new_name) {   	
			$this->name = $new_name;
		}	
 
		function get_name() {
			return $this->name;
		}		
 
	}
?>

نکته: زمانی که شما یک پروپرتی را با استفاده از کلمه‌ی کلیدی var تعریف کنید، آن پروپرتی به صور پیش‌فرض عمومی (Public) خواهد بود.

مرحله شانزدهم:

محدود کردن دسترسی به پروپرتی‌ها: بخش دوم

هنگامی که یک پروپرتی را در کلاس‌های پی‌اچ‌پی از نوع private تعیین کنیم، فقط برخی از کلاس‌های دیگر می‌توانند به مقدار این پروپرتی دسترسی داشته باشند.

هنگامی که یک پروپرتی را در کلاس‌های پی‌اچ‌پی از نوع protected تعیین کنیم، فقط برخی از کلاس‌های مشتق شده از کلاس مورد نظر، امکان دسترسی به پروپرتی‌ یاد شده را خواهند داشت. مشتق شدن و مباحث مربوط به ارث‌بری در کلاس‌های پی‌اچ‌پی را بعدا به شما آموزش خواهیم داد.

پروپرتی‌هایی که به صورت Public تعریف شده‌ باشند، محدودیت دسترسی نداشته و این یعنی هر کسی و هر کلاسی می‌تواند به مقدار آن‌ها دسترسی یابد.

به منظور فهم بیشتر این بخش تقریبا فرار از شیءگرایی در پی‌اچ‌پی، کد زیر را به دقت مشاهده کرده و آن را خودتان نیز تمرین، تا نتیجه را مشاهده کنید. برای درک بهتر کدها، کامنت‌های موجود در مثال زیر را نیز مطالعه کنید:

<?php include("class_lib.php"); ?>
<?php  
	$stefan = new person("Stefan Mischook");   
	echo "Stefan's full name: " .  $stefan->get_name() ;  
 
	/*  
	Since $pinn_number was declared private, this line of code 
	will generate an error. Try it out!   
	*/  
 
	echo "Tell me private stuff: ".$stefan->pinn_number;  
?>

نکته: اگر بخواهید از طریق یک کلاس دیگر به یک پروپرتی خصوصی (private) در یک کلاس دیگر دسترسی داشته باشید، با خطای PHP مواجه خواهید شد. این خطا چیزی شبیه به متن زیر خواهد بود:

'Fatal error: Cannot access private property person::$pinn_number in ...'

مرحله هفدهم:

محدود کردن دسترسی به متدها

درست همانند پروپرتی‌ها، شما می‌توانید دسترسی به متدهای تعریف شده در یک کلاس را با استفاده از ۳ اصلاح‌کننده زیر کنترل کنید.

  1. public (عمومی)
  2. protected (محافظت شده)
  3. private (خصوصی)

به طور خلاصه: امکان کنترل کردن دسترسی به متدهای هر کلاس، باعث می‌شود تا بتوانیم روش استفاده‌ی دیگران از آن کلاس را کنترل کنیم.

احتمالا شما هم متوجه شده‌اید که استفاده از محدودکننده‌های دسترسی و دیگر ساختارهای برنامه‌نویسی شیءگرا، کمی زیرکانه خواهد بود. این مورد برای افرادی که به تازگی شروع به یادگیری شیءگرایی کرده‌اند، بیشتر محسوس است. پس بهتر است شما نیز به خود شانسی بدهید و شروع به یادگیری و استفاده از این روش کنید.

با توجه به آنچه اشاره شد، باید بگوییم که ساختار یکپارچه‌ی برنامه نویسی شیءگرا باعث می‌شود تا بتوان روی پروژه‌های موجود که با این روش ساخته شده‌اند کار کرد یا پروژه‌های گروهی را به طور استانداردتر پیش برد. به کد زیر توجه کنید:

<?php 
	class person {  
		var $name;  
 
		public $height;  
		protected $social_insurance;  
		private $pinn_number;
 
		function __construct($persons_name){   
		   $this->name = $persons_name;  
		}       
 
		private function get_pinn_number(){
			return
			$this->pinn_number;  
		}       
	}   
?>

نکته: از آنجا که متد ()get_pinn_number یک متد از نوع خصوصی (private) است، تنها جایی که می‌توان از این متد استفاده کرد، در همین کلاس است. اگر قصد دارید متدهای مورد نظر خود را در صفحات پی‌اچ‌پی خود به طور مستقیم فراخوانی کنید، مسلما باید آن متدها را به صورت عمومی یا همان Public تعریف کرده باشید.