2015-05-08 3 views
0

, как я могу создать класс с этим вызовом синтаксисомУплотненный свободный интерфейс с PHP

oop->open(file)->select_row(3)->update('this is row3')->save(); 

Иным вопрос , если у меня есть класс, и я не буду делать плагин для этого, каждый плагин в каждом отдельном файле PHP ... Мой бывший.

class Foo { 
    function foo1() { 
     print 'foo foo'; 
    } 
} 

function plugin_foo(){ 
    print 'this from plugin_foo'; 
} 

$foo = new Foo; 
print $foo->foo1()->plugin_foo() 

oop->open(file)->select_row(3)->update('this is row3')->save(); 

другой вопрос , если у меня есть класс, и я не буду делать плагин для него, каждый плагин в каждом файле PHP отдельный ... мой Ex.

class Foo { 
    function foo1() { 
     print 'foo foo'; 
    } 
} 

function plugin_foo(){ 
    print 'this from plugin_foo'; 
} 

$foo = new Foo; 
print $foo->foo1()->plugin_foo() 
+1

Вы можете «вернуть $ this' в функции, которые вы хотите связать. – Rasclatt

+2

Просто верните '$ this' в каждом методе. Это называется беглый интерфейс – Rizier123

+0

спасибо, его легко :) –

ответ

1

Это называется метод цепочки. Вернув экземпляр самого себя, он может связывать вызовы.

class Foobar 
{ 
    function foo() 
    { 
     echo 'hi'; 

     return $this; 
    } 
} 
0

Вам необходимо вернуть объект того же класса во все методы.

Смежные вопросы