I'll be damn. Works perfectly, and - what is more than expected - I
understand why!
Thanks a bunch.
Damn. Awesome :D
> Some of what you want to do is possible with the set class; other bits
> would be more complicated.
>
> With this approach, the best you could achieve would be a nasty mess
> of array_combine, array_keys and various set calls, all nested and
> difficult to follow.
>
> Although I love the Set class with all my heart, this is one instance
> where I believe a simple loop would be easier to code, easier to
> maintain, and ultimately more efficient for the server and the coder.
>
> foreach($data as $i => $bacon) {
> $statusHistory = array();
> foreach($bacon['StatusHistory'] as $eggs) {
> $statusHistory[$eggs['StatusName']['text']] = array(
> 'since' => $eggs['since'],
> 'Changer' => $ggs['Changer']['full_name']
> );
> }
> $data[$i]['StatusHistory'] = $statusHistory;
> }
>
> Job done!
>
> hth
> grigri
>
> On Apr 24, 9:16 am, "Faza" <f...@ansi.pl> wrote:
>> Hello again,
>>
>> this is the array I'm working on:
>>
>> Array
>> (
>> [0] => Array
>> (
>> [Design] => Array
>> (
>> [id] => 39
>> [design_no] => 1
>> [job_title] => gjgfjyjgyjf
>> [expected_date] => 2009-04-14
>> [customer_id] => 5
>> [designer_id] => 15
>> [status_id] => 1
>> [post_date] => 2009-04-23 13:11:23.247263+02
>> [author_id] => 73
>> )
>>
>> [Author] => Array
>> (
>> [full_name] => SKP Admin
>> [id] => 73
>> )
>>
>> [Designer] => Array
>> (
>> [full_name] => Jan Grzenda
>> [id] => 15
>> )
>>
>> [CustomerNr] => Array
>> (
>> [id] => 5
>> [customers_number_name] => Test (2343)
>> )
>>
>> [StatusHistory] => Array
>> (
>> [0] => Array
>> (
>> [since] => 2009-04-21 00:00:00+02
>> [status_names_id] => 1
>> [changer_id] => 74
>> [design_id] => 39
>> [StatusName] => Array
>> (
>> [text] => Nowe
>> )
>>
>> [Changer] => Array
>> (
>> [full_name] => John Doe
>> )
>>
>> )
>>
>> [1] => Array
>> (
>> [since] => 2009-04-23 14:17:11.673985+02
>> [status_names_id] => 2
>> [changer_id] => 74
>> [design_id] => 39
>> [StatusName] => Array
>> (
>> [text] => Przydzielone grafikowi
>> )
>>
>> [Changer] => Array
>> (
>> [full_name] => Ed Smith
>> )
>>
>> )
>>
>> )
>>
>> )
>>
>> I want to modify the [StatusHistory] branch.
>> So far, I'm extracting it using:
>>
>> $hist = Set::extract($designs, '{n}.StatusHistory');
>>
>> This results in:
>>
>> Array
>> (
>> [0] => Array
>> (
>> [0] => Array
>> (
>> [since] => 2009-04-21 00:00:00+02
>> [status_names_id] => 1
>> [changer_id] => 74
>> [design_id] => 39
>> [StatusName] => Array
>> (
>> [text] => Nowe
>> )
>>
>> [Changer] => Array
>> (
>> [full_name] => John Doe
>> )
>>
>> )
>>
>> [1] => Array
>> (
>> [since] => 2009-04-23 14:17:11.673985+02
>> [status_names_id] => 2
>> [changer_id] => 74
>> [design_id] => 39
>> [StatusName] => Array
>> (
>> [text] => Przydzielone grafikowi
>> )
>>
>> [Changer] => Array
>> (
>> [full_name] => Ed Smith
>> )
>>
>> )
>>
>> )
>>
>> I've tried endless combine params, but without success.
>> I want to achieve this:
>>
>> Array
>> (
>> [0] => Array
>> (
>> [Nowe] = (StatusName.text) => Array
>> (
>> [since] => 2009-04-21 00:00:00+02
>> [Changer] => John Doe = (Changer.full_name)
>> )
>>
>> [Przydzielone grafikowi] => Array
>> (
>> [since] => 2009-04-23 14:17:11.673985+02
>> [Changer] => Ed Smith
>> )
>>
>> )
>>
>> Last question, I want to replace the original [StatusHistory] with the
>> new
>> array.
>>
>> --
>> Jacek
> >
>
--
Jacek
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "CakePHP" group.
To post to this group, send email to cake-php@googlegroups.com
To unsubscribe from this group, send email to cake-php+unsubscribe@googlegroups.com
For more options, visit this group at http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---
No comments:
Post a Comment