<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Ersocon.net - Science Blog &#187; Singleton</title>
	<atom:link href="http://blog.ersocon.net/tag/singleton/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.ersocon.net</link>
	<description>Zend Framework, PHP, Java</description>
	<lastBuildDate>Sat, 08 Oct 2011 10:21:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>Implementierung des Singleton-Pattern in PHP</title>
		<link>http://blog.ersocon.net/implementierung-des-singleton-pattern-in-php-pid30.html</link>
		<comments>http://blog.ersocon.net/implementierung-des-singleton-pattern-in-php-pid30.html#comments</comments>
		<pubDate>Sun, 07 Mar 2010 10:03:34 +0000</pubDate>
		<dc:creator>ersocon</dc:creator>
				<category><![CDATA[Design Pattern]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Singleton]]></category>

		<guid isPermaLink="false">http://blog.ersocon.net/?p=30</guid>
		<description><![CDATA[Das Singleton-Pattern ist eines der einfachsten Pattern und lässt sich auch in PHP implementieren. Es sorgt dafür, dass von einer Singleton-Klasse jeweils nur eine Instanz erzeugt werden kann. Somit ist das Objekt zentral zugänglich, was allerdings auch als großer Nachteil ausgelegt werden kann.]]></description>
			<content:encoded><![CDATA[<p>Das Singleton-Pattern ist eines der einfachsten Pattern und lässt sich auch in PHP implementieren. Es sorgt dafür, dass von einer Singleton-Klasse jeweils nur eine Instanz erzeugt werden kann. Somit ist das Objekt zentral zugänglich, was allerdings auch als großer Nachteil ausgelegt werden kann.</p>
<p>Eine Beispielimplementierung kann z.B. wie folgt aussehen:</p>
<pre class="brush:php">
/**
 * Implementierung des Singleton Pattern
 *
 * Der Konstruktor und das Klonen sind private Methoden, können
 * somit nicht von außen aufgerufen werden.
 */
class Singleton
{
    /*
     * @var Singleton
     */
    static private $_instance = null;

    /**
     * Konstruktor
     */
    private function __constructor() {}
    private function __clone() {}

    /**
     * Liefert die einzelne Instanz
     */
    static public function getInstance()
    {
        if (is_null(self::$_instance)) {
            self::$_instance = new self;
        }
        return self::$_instance;
    }
}
</pre>
<p>Instanziierung im Programmcode</p>
<pre class="brush:php">
// Objekt instanziieren
$singleton = Singleton::getInstance();
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.ersocon.net/implementierung-des-singleton-pattern-in-php-pid30.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

