phpメソッドマルチパラメータ再構成
2737 ワード
, , :
01 function saveArticle($title, $content, $categoryId)
02 {
03 // ...
04 }
, , 。 :
01 class Article
02 {
03 var $title;
04 var $content;
05 var $categoryId;
06
07 function save()
08 {
09 // ...
10 }
11 }
, , 。 , , , , 。 , Article find , limit, offset, order :
01 class Article
02 {
03 var $title;
04 var $content;
05 var $categoryId;
06
07 var $limit = 10;
08 var $offset = 0;
09 var $order = 'created DESC';
10
11 function save()
12 {
13 // ...
14 }
15
16 function find($categoryId)
17 {
18 // ...
19 }
20 }
, limit,offset,order , , title,content,categoryId , limit,offset,order , , , , ( find static , , ):
01 class Article
02 {
03 var $title;
04 var $content;
05 var $categoryId;
06
07 function save()
08 {
09 // ...
10 }
11
12 function find($categoryId, $limit = 10, $offset = 0, $order = 'created DESC')
13 {
14 // ...
15 }
16 }
,find , , :
01 class Article
02 {
03 var $title;
04 var $content;
05 var $categoryId;
06
07 function save()
08 {
09 // ...
10 }
11
12 function find($categoryId, $options = array())
13 {
14 $default = array(
15 'limit' => 10,
16 'offset' => 0,
17 'order' => 'created DESC'
18 );
19
20 $options = array_merge($default, (array)$options);
21
22 // ...
23 }
24 }
, :
$article->find(123, array('limit' => 20));
, , , , 。 CakePHP , , 。
: array_merge , $options += $default; , , options , , 。