Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

General Questions /

General questions about getting started with SilverStripe that don't fit in any of the categories above.

Moderators: martimiz, Sean, biapar, Willr, Ingo, swaiba, simon_w

Convert an ArrayData object into a normal PHP array?


Reply


4 Posts   1898 Views

Avatar
purplespider

Community Member, 83 Posts

16 July 2010 at 6:26am

How can I convert an ArrayData object into a normal PHP array?

I have a function that outputs an ArrayData object so that I can display it in a template, but I also have another function that needs to iterate through the array and check it's values with another array, this I cannot do unless the ArrayData is changed into a normal array.

Thanks
James

Avatar
zenmonkey

Community Member, 532 Posts

16 July 2010 at 6:47am

Had this issue a few days ago

http://www.silverstripe.org/data-model-questions/show/288469#post288469

Avatar
Willr

Forum Moderator, 5513 Posts

16 July 2010 at 9:52am

Ah interesting, you can set the array(), but no methods in ArrayData to get the raw array back out, doesn't appear like its possible to simply get an array. You can however loop over the ArrayData object using the Viewable Iterator (http://api.silverstripe.org/2.4/sapphire/view/ViewableData.html#methodgetIterator). Haven't used that too much.

I've added a getArray() to ArrayData to make something like this easier. See http://open.silverstripe.org/changeset/108012

You can either apply that change to your copy of SS, download the latest 2.4 version from svn (daily builds tomorrow) or wait till 2.4.1

Avatar
purplespider

Community Member, 83 Posts

18 July 2010 at 5:04am

Amazing! Thank you very much Willr, works great!