воскресенье, 26 декабря 2010 г.

Иерархия Singleton классов.

Доброго утра. Вот мой пример экспериментирования с  понятием Singleton in PHP. Задача была - сократить код. Проблема.  Я создал класс Singleton и начал от него унаследовать. Получилось то что все разные классы которые хотят иметь разные экземпляры синглетов имеют  один и тот же $instance. Не в зависимости от иерархии все классы имеют одинаковый  $instance. Будьте с этим осторожны.
<?php
class Singleton{
    static private $instance = NULL;
    public $str="nole";
    static function getInstance(){
        if (self::$instance == NULL){
              self::$instance = new Singleton();
        }
        return self::$instance;
      }
   
      function __construct(){
    }
   
   
   
    function __clone(){
    }
}//s5_dobject_singleton

class Singleton1_0 extends Singleton{
}

class Singleton1_1 extends Singleton{
}

class Singleton1_2 extends Singleton{
}

$s_lev0_0=Singleton::getInstance();
$s_lev0_0->str='lev0_0';
$s_lev0_1=Singleton::getInstance();
$s_lev0_1->str='lev0_1';
$s_lev0_2=Singleton::getInstance();
$s_lev0_2->str='lev0_2';
//
$s_lev1_0=Singleton1_0::getInstance();
$s_lev1_0->str='lev1_0';
$s_lev1_1=Singleton1_1::getInstance();
$s_lev1_1->str='lev1_1';
$s_lev1_2=Singleton1_2::getInstance();
$s_lev1_2->str='lev1_2';
//
print 'lev0_0='.$s_lev0_0->str.'<br>';
print 'lev0_1='.$s_lev0_1->str.'<br>';
print 'lev0_2='.$s_lev0_2->str.'<br>';
//
print 'lev1_0='.$s_lev0_0->str.'<br>';
print 'lev1_1='.$s_lev1_1->str.'<br>';
print 'lev1_2='.$s_lev1_2->str.'<br>';
?>
Результат...


lev0_0=lev1_2
lev0_1=lev1_2
lev0_2=lev1_2
lev1_0=lev1_2
lev1_1=lev1_2
lev1_2=lev1_2

Вывод:
Не в зависимости от иерархии все классы имеют одинаковый  $instance. Будьте с этим осторожны.

понедельник, 20 декабря 2010 г.

paypal-Быстрая кнопка оплаты.

http://www.computertipsandtools.com/553/how-to-edit-a-paypal-buy-now-button/
Видео которое показыет как быстро создать кнопку оплаты через PayPal. Что самое интересное, это простой запрос в котором цена не передается. Информация о цене находится на сервере.

django MVC

http://sciyoshi.com/blog/2008/nov/18/rails-mvc-controllers-django/

понедельник, 6 декабря 2010 г.

Как принимать оплату с кредиток в Drupal по средствам Webform?

http://www.maiboroda.ru/webmaster/kak-prinimat-oplatu-s-kreditok-v-drupal-po-sredstvam-webform/