<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های hadi</title><link>https://virgool.ir/feed/@hadishadi555</link><description>ای دل غم این جهان فرسوده مخور/&#xA;بیهوده نئی غمان بیهوده مخور/&#xA;چون بوده گذشت و نیست نابوده پدید/&#xA;خوش باش غم بوده و نابوده مخور</description><language>fa</language><pubDate>2026-11-12 02:21:23</pubDate><image><url>https://files.virgool.ir/upload/users/29499/avatar/skcwcs.png</url><title>hadi</title><link>https://virgool.ir/@hadishadi555</link></image><item><title>الگوی طراحی Singleton و روش پیاده سازی در php</title><link>https://virgool.ir/@hadishadi555/الگوی-طراحی-singleton-و-روش-پیاده-سازی-در-php-ks9rjdjlreav</link><description>الگوی طراحی Singleton چیست؟گاهی اوقات ما نیاز داریم که فقط یک شی از یک کلاس ایجاد بشه و اجازه ساخت شی جدیدی داده نشه, که در اینگونه موارد از اگوی طراحی Singleton استفاده میکنیم.نحوه ی طراحیفرض کنید میخواهیم یک شی از کلاس Request ایجاد کنیم که در هنگام ورود کاربر به سایت آی پی و مرورگر کاربر را نگه میدارد. برای این که از کلاس Request فقط اجازه ساختن یک شی داشته باشیم, در ابتدا متد __construct را private میکنیم تا اجازه ساختن شی بیرون از کلاس وجود نداشته باشد حال یک متغیر استاتیک به اسم instance تعریف میکنیم و مقدار آن را null قرار میدهیم و یک متد استاتیک ایجاد میکنیم که وظیفه آن ایجاد شی جدید است و درون آن بررسی میکنیم که اگر مقدار instance برابر با null بود یک شی از کلاس Request ایجاد کند و مقدار آن را درون متغیر instance قرار میدهد و در غیر این صورت متغیر instance را برمیگرداند.به کد زیر نگاه کنید تا متوجه شویدclass Request {        private static $instance = null;&#xA;        public $ip;&#xA;        public $agent;        private function __construct() &#xA;        {&#xA;                $this-&gt;ip = $_SERVER[&#34;REMOTE_ADDR&#34;];&#xA;                 $this-&gt;agent = $_SERVER[&#34;HTTP_USER_AGENT&#34;];&#xA;         }&#xA;        public static function get_instance() : Request&#xA;        {&#xA;                 if(self::$instance == null){&#xA;                         self::instance = new Request;&#xA;                 }&#xA;                 return self::instance;&#xA;         }}</description><category>hadi</category><author>hadi</author><pubDate>Wed, 01 Jul 2020 12:29:29 +0430</pubDate></item></channel></rss>