2016-09-03 4 views
1

cakephp 3.1を使用しています。私はconcat first nameとlastnameをfindメソッドのリストを使ってスペースで使う必要があります。は、cakephp 3.xのfindメソッドのリストでconcatを使用する必要があります。3.x

私は以下のコードを半分の列で返しますが、半分の列の代わりにスペースが必要です。

コード

$query = $articles->find('list', [ 
     'keyField' => 'id', 
     'valueField' => ['firstname','lastname'] 
    ]); 
    $data = $query->toArray(); 

私は結果の下になった:

$data = [ 
     1 => 'rahul;patel', 
     2 => 'raj;patel', 
    ]; 

しかし、私は代わりに半列のスペースを必要とします(;)。

よろしくお願いします。

ありがとうございます。

+0

'$ query'を' var_dump 'するとどうなりますか? – Perspective

+0

私はすでに出力を出力しました –

+0

'$ query-> toArray();'の出力は '$ query'だけではなく' $ query'だけではありません – Perspective

答えて

0

は、現在3.0のドキュメントでは、私はfind関数にパラメータを追加するためのサポートが表示されていないが、私はこれらの線に沿って何かをしようと、私は、CakePHP http://book.cakephp.org/3.0/en/orm/query-builder.html

に非常に精通していませんよ。私はarray_mapで代替可能なリターンをコメントアウトしました。私はこれが役立つことを願っています

$query = $articles 
    ->find() 
    ->select(['id','firstname', 'lastname']) 
    ->order(['created' => 'DESC']); 

    $data = array_reduce($query, function($carry, $item) { 
    $carry[$item->id] = $item->firstname.' '.$item->lastname; 
    return $carry; 
    }, []); 
+0

ありがとうございます。私はこのように使う必要はありません私はこれについて知っている...リストに入れたい –

+0

@KamleshGuptaはこの助けをしていますか? https://github.com/cakephp/cakephp/issues/3597 – Perspective

+0

実際には私はIDと名前としてキーを、名前と姓の間にスペースとfnameとlnameの間に入れたいとします。 –

関連する問題