FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
DesignPatternsPHP/FluentInterface/FluentInterface.php at master · phybros/DesignPatternsPHP · GitHub
phybros
/
DesignPatternsPHP
Public
forked from
DesignPatternsPHP/DesignPatternsPHP
Notifications
You must be signed in to change notification settings
Fork
1
Star
0
Code
Pull requests
0
Actions
Projects
Wiki
Security and quality
0
Insights
Additional navigation options
Code
Pull requests
Actions
Projects
Wiki
Security and quality
Insights
Expand file tree
Breadcrumbs
DesignPatternsPHP
/
FluentInterface
/
FluentInterface.php
Copy path
More file actions
More file actions
Latest commit
History
History
History
59 lines (53 loc) · 1.11 KB
Breadcrumbs
DesignPatternsPHP
/
FluentInterface
/
FluentInterface.php
Copy path
File metadata and controls
59 lines (53 loc) · 1.11 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<?php
namespace
DesignPatterns
;
/**
* fluent interface pattern
*
* Purpose:
* to write code that is easy readable just like "real" sentences
*
* Examples:
* - Doctrine2's QueryBuilder works something like that example class below
* - PHPUnit uses fluent interfaces to build mock objects
*
*/
class
SQL
{
protected
$
_fields
=
array
();
protected
$
_from
=
array
();
protected
$
_where
=
array
();
/**
*
* @param array $fields
* @return SQL
*/
public
function
select
(
array
$
fields
=
array
())
{
$
this
->
_fields
=
$
fields
;
return
$
this
;
}
/**
*
* @param string $table
* @param string $alias
* @return SQL
*/
public
function
from
(
$
table
,
$
alias
)
{
$
this
->
_from
[] =
$
table
.
'
AS
'
.
$
alias
;
return
$
this
;
}
/**
* @param string $condition
* @return SQL
*/
public
function
where
(
$
condition
)
{
$
this
->
_where
[] =
$
condition
;
return
$
this
;
}
}
$
instance
=
new
SQL
();
$
instance
->
select
(
array
(
'
foo
'
,
'
bar
'
))
->
from
(
'
foobar
'
,
'
f
'
)
->
where
(
'
f.bar = ?
'
);
Back
|
FazBrowse Home
|
New Git URL