Приведение массива строк PHP

Я пытаюсь найти способ привести следующее в реальный массив. Данные хранятся в виде строки в системе, над которой я работаю.

я пытался (array) $stringArrayData; но это не сработало.

Строковые данные выглядят следующим образом:

array(
4 => array(
'nid' => 4099,
'cid' => '4',
'pid' => '0',
'form_key' => 'event_details',
'name' => 'Event Details',
'type' => 'fieldset',
'value' => '',
'extra' => array(
'title_display' => 0,
'private' => 0,
'collapsible' => 0,
'collapsed' => 0,
'conditional_operator' => '=',
'description' => '',
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '0',
'weight' => '1',
'page_num' => 1,
),
5 => array(
'nid' => 4099,
'cid' => '5',
'pid' => '4',
'form_key' => 'name',
'name' => 'Name',
'type' => 'textfield',
'value' => '',
'extra' => array(
'title_display' => 'inline',
'private' => 0,
'disabled' => 0,
'unique' => 0,
'conditional_operator' => '=',
'width' => '',
'maxlength' => '',
'field_prefix' => '',
'field_suffix' => '',
'description' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '2',
'page_num' => 1,
),
6 => array(
'nid' => 4099,
'cid' => '6',
'pid' => '4',
'form_key' => 'description',
'name' => 'Description',
'type' => 'textarea',
'value' => '',
'extra' => array(
'description' => 'please include who the event is aimed at',
'title_display' => 0,
'private' => 0,
'resizable' => 0,
'disabled' => 0,
'conditional_operator' => '=',
'cols' => '',
'rows' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '3',
'page_num' => 1,
),
21 => array(
'nid' => 4099,
'cid' => '21',
'pid' => '4',
'form_key' => 'add_an_image',
'name' => 'Add an image',
'type' => 'file',
'value' => '',
'extra' => array(
'scheme' => 'public',
'directory' => 'event-suggestions',
'title_display' => 'before',
'private' => 0,
'progress_indicator' => 'throbber',
'filtering' => array(
'size' => '2 MB',
'types' => array(
'gif',
'jpg',
'png',
),
'addextensions' => '',
),
'conditional_operator' => '=',
'description' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '0',
'weight' => '4',
'page_num' => 1,
),
7 => array(
'nid' => 4099,
'cid' => '7',
'pid' => '4',
'form_key' => 'venue',
'name' => 'Venue',
'type' => 'fieldset',
'value' => '',
'extra' => array(
'title_display' => 0,
'private' => 0,
'collapsible' => 0,
'collapsed' => 0,
'conditional_operator' => '=',
'description' => '',
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '0',
'weight' => '5',
'page_num' => 1,
),
23 => array(
'nid' => 4099,
'cid' => '23',
'pid' => '7',
'form_key' => 'please_select_your_venue',
'name' => 'Please select your venue',
'type' => 'select',
'value' => '',
'extra' => array(
'items' => "3257|639 Enterprise Centre\n3267|Alexandra Palace\n126|Alexandra Park Library\n142|Asian Centre\n153|Bernie Grant Arts Centre\n127|Bruce Castle Museum\n3259|Community Use For the Old Station\n128|Coombes Croft Library\n147|Crowland Primary School\n146|Delicia Cafe\n138|Fortismere School\n3385|Haringey Sixth Form Centre\n135|Harmony Gardens Wins!\n149|Highgate Gallery\n129|Highgate Library\n130|Hornsey Library\n154|Jacksons Lane\n148|Kurdish Community Centre\n155|Lauderdale House\n3235|Living Under One Sun Community Allotment\n132|Marcus Garvey Library\n139|Methodist Church Hall\n133|Muswell Hill Library\n150|Northumberland Park Neighbourhood Resource Centre\n141|Open Smart Homes around Haringey\n156|Park Road Leisure Centre\n134|St Ann's Library\n157|Stroud Green and Harringay Library\n145|T Chances\n144|The Beehive Pub\n140|The Old Dairy\n136|The Tagore Centre\n143|Tottenham Community Sports Centre\n158|Tottenham Green Leisure Centre\n152|Tottenham Seventh-Day Adventist Church\n137|Triangle Centre\n151|Victoria Stakes\n159|White Hart Lane Community Sports Centre\n131|Wood Green Central Library\nother|Other\n",
'options_source' => 'event_venue',
'multiple' => 0,
'title_display' => 'none',
'private' => 0,
'aslist' => 1,
'optrand' => 0,
'other_option' => NULL,
'other_text' => 'Other...',
'description' => '',
'custom_keys' => FALSE,
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '12',
'page_num' => 1,
),
27 => array(
'nid' => 4099,
'cid' => '27',
'pid' => '7',
'form_key' => 'other_venue',
'name' => 'Other Venue',
'type' => 'fieldset',
'value' => '',
'extra' => array(
'title_display' => 'none',
'private' => 0,
'collapsible' => 0,
'collapsed' => 0,
'webform_conditional_field_value' => 'other',
'webform_conditional_cid' => '23',
'webform_conditional_operator' => '=',
'description' => '',
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '0',
'weight' => '14',
'page_num' => 1,
),
28 => array(
'nid' => 4099,
'cid' => '28',
'pid' => '27',
'form_key' => 'venue_company_name',
'name' => 'Venue/Company name',
'type' => 'textfield',
'value' => '',
'extra' => array(
'title_display' => 'inline',
'private' => 0,
'disabled' => 0,
'unique' => 0,
'webform_conditional_field_value' => 'other',
'webform_conditional_cid' => '23',
'webform_conditional_operator' => '=',
'width' => '',
'maxlength' => '',
'field_prefix' => '',
'field_suffix' => '',
'description' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '15',
'page_num' => 1,
),
29 => array(
'nid' => 4099,
'cid' => '29',
'pid' => '27',
'form_key' => 'address_line_1',
'name' => 'Address Line 1',
'type' => 'textfield',
'value' => '',
'extra' => array(
'title_display' => 'before',
'private' => 0,
'disabled' => 0,
'unique' => 0,
'webform_conditional_field_value' => 'other',
'webform_conditional_cid' => '23',
'webform_conditional_operator' => '=',
'width' => '',
'maxlength' => '',
'field_prefix' => '',
'field_suffix' => '',
'description' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '16',
'page_num' => 1,
),
30 => array(
'nid' => 4099,
'cid' => '30',
'pid' => '27',
'form_key' => 'address_line_2',
'name' => 'Address Line 2',
'type' => 'textfield',
'value' => '',
'extra' => array(
'title_display' => 'before',
'private' => 0,
'disabled' => 0,
'unique' => 0,
'webform_conditional_field_value' => 'other',
'webform_conditional_cid' => '23',
'webform_conditional_operator' => '=',
'width' => '',
'maxlength' => '',
'field_prefix' => '',
'field_suffix' => '',
'description' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '0',
'weight' => '17',
'page_num' => 1,
),
31 => array(
'nid' => 4099,
'cid' => '31',
'pid' => '27',
'form_key' => 'town_city',
'name' => 'Town/City',
'type' => 'textfield',
'value' => '',
'extra' => array(
'title_display' => 'before',
'private' => 0,
'disabled' => 0,
'unique' => 0,
'webform_conditional_field_value' => 'other',
'webform_conditional_cid' => '23',
'webform_conditional_operator' => '=',
'width' => '',
'maxlength' => '',
'field_prefix' => '',
'field_suffix' => '',
'description' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '18',
'page_num' => 1,
),
32 => array(
'nid' => 4099,
'cid' => '32',
'pid' => '27',
'form_key' => 'county',
'name' => 'County',
'type' => 'textfield',
'value' => '',
'extra' => array(
'title_display' => 'before',
'private' => 0,
'disabled' => 0,
'unique' => 0,
'webform_conditional_field_value' => 'other',
'webform_conditional_cid' => '23',
'webform_conditional_operator' => '=',
'width' => '',
'maxlength' => '',
'field_prefix' => '',
'field_suffix' => '',
'description' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '0',
'weight' => '19',
'page_num' => 1,
),
33 => array(
'nid' => 4099,
'cid' => '33',
'pid' => '27',
'form_key' => 'postcode',
'name' => 'Postcode',
'type' => 'textfield',
'value' => '',
'extra' => array(
'title_display' => 'before',
'private' => 0,
'width' => '20',
'disabled' => 0,
'unique' => 0,
'maxlength' => '7',
'webform_conditional_field_value' => 'other',
'webform_conditional_cid' => '23',
'webform_conditional_operator' => '=',
'field_prefix' => '',
'field_suffix' => '',
'description' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '20',
'page_num' => 1,
),
8 => array(
'nid' => 4099,
'cid' => '8',
'pid' => '4',
'form_key' => 'dates',
'name' => 'Dates',
'type' => 'fieldset',
'value' => '',
'extra' => array(
'title_display' => 0,
'private' => 0,
'collapsible' => 0,
'collapsed' => 0,
'conditional_operator' => '=',
'description' => '',
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '0',
'weight' => '6',
'page_num' => 1,
),
9 => array(
'nid' => 4099,
'cid' => '9',
'pid' => '8',
'form_key' => 'starting',
'name' => 'Starting',
'type' => 'date',
'value' => '',
'extra' => array(
'timezone' => 'user',
'title_display' => 'before',
'private' => 0,
'datepicker' => 1,
'year_textfield' => 0,
'start_date' => '0 years',
'end_date' => '+2 years',
'description' => '',
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '7',
'page_num' => 1,
),
25 => array(
'nid' => 4099,
'cid' => '25',
'pid' => '8',
'form_key' => 'number_of_occurrences',
'name' => 'Number of occurrences',
'type' => 'select',
'value' => '1',
'extra' => array(
'items' => "1|1\n2|2\n3|3\n4|4\n5|5\n6|6\n7|7\n8|8\n9|9\n10|10",
'multiple' => 0,
'title_display' => 'before',
'private' => 0,
'aslist' => 1,
'optrand' => 0,
'other_option' => NULL,
'other_text' => 'Other...',
'description' => '',
'custom_keys' => FALSE,
'options_source' => '',
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '8',
'page_num' => 1,
),
11 => array(
'nid' => 4099,
'cid' => '11',
'pid' => '8',
'form_key' => 'how_often_does_this_event_occur',
'name' => 'How often does this event occur?',
'type' => 'select',
'value' => '',
'extra' => array(
'items' => "655|One off\n656|Daily\n657|Weekly\n658|Forthnightly\n659|Monthly\n660|Other\n",
'options_source' => 'event_frequency',
'multiple' => 0,
'title_display' => 'before',
'private' => 0,
'aslist' => 1,
'optrand' => 0,
'other_option' => NULL,
'other_text' => 'Other...',
'description' => '',
'custom_keys' => FALSE,
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '9',
'page_num' => 1,
),
13 => array(
'nid' => 4099,
'cid' => '13',
'pid' => '4',
'form_key' => 'event_contact_details',
'name' => 'Event Contact Details ',
'type' => 'textarea',
'value' => '',
'extra' => array(
'description' => 'Please note that these contact details WILL be published with the event details, in case customers want any more information',
'title_display' => 0,
'private' => 0,
'resizable' => 0,
'disabled' => 0,
'conditional_operator' => '=',
'cols' => '',
'rows' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '7',
'page_num' => 1,
),
1 => array(
'nid' => 4099,
'cid' => '1',
'pid' => '0',
'form_key' => 'your_contact_details',
'name' => 'Your Contact Details',
'type' => 'fieldset',
'value' => '',
'extra' => array(
'description' => 'Please note that your contact details are for internal use only in case we have a query with the details submitted. These details will not be published on the site.',
'title_display' => 0,
'private' => 0,
'collapsible' => 0,
'collapsed' => 0,
'conditional_operator' => '=',
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '0',
'weight' => '2',
'page_num' => 1,
),
2 => array(
'nid' => 4099,
'cid' => '2',
'pid' => '1',
'form_key' => 'full_name',
'name' => 'Full Name',
'type' => 'textfield',
'value' => '',
'extra' => array(
'title_display' => 'inline',
'private' => 0,
'disabled' => 0,
'unique' => 0,
'conditional_operator' => '=',
'width' => '',
'maxlength' => '',
'field_prefix' => '',
'field_suffix' => '',
'description' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '1',
'page_num' => 1,
),
24 => array(
'nid' => 4099,
'cid' => '24',
'pid' => '1',
'form_key' => 'phone_number',
'name' => 'Phone Number',
'type' => 'textfield',
'value' => '',
'extra' => array(
'title_display' => 'inline',
'private' => 0,
'disabled' => 0,
'unique' => 0,
'width' => '',
'maxlength' => '',
'field_prefix' => '',
'field_suffix' => '',
'description' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '2',
'page_num' => 1,
),
3 => array(
'nid' => 4099,
'cid' => '3',
'pid' => '1',
'form_key' => 'email_address',
'name' => 'Email Address',
'type' => 'email',
'value' => '',
'extra' => array(
'title_display' => 'inline',
'private' => 0,
'disabled' => 0,
'unique' => 0,
'conditional_operator' => '=',
'width' => '',
'description' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '3',
'page_num' => 1,
),
14 => array(
'nid' => 4099,
'cid' => '14',
'pid' => '0',
'form_key' => 'admission_details',
'name' => 'Admission Details',
'type' => 'fieldset',
'value' => '',
'extra' => array(
'title_display' => 0,
'private' => 0,
'collapsible' => 0,
'collapsed' => 0,
'conditional_operator' => '=',
'description' => '',
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '0',
'weight' => '3',
'page_num' => 1,
),
15 => array(
'nid' => 4099,
'cid' => '15',
'pid' => '14',
'form_key' => 'cost',
'name' => 'Cost',
'type' => 'select',
'value' => '',
'extra' => array(
'items' => "616|Free Event\n628|Under £10\n630|£10 or over\n",
'options_source' => 'event_cost',
'multiple' => 0,
'title_display' => 'before',
'private' => 0,
'aslist' => 1,
'optrand' => 0,
'other_option' => NULL,
'other_text' => 'Other...',
'description' => '',
'custom_keys' => FALSE,
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '3',
'page_num' => 1,
),
16 => array(
'nid' => 4099,
'cid' => '16',
'pid' => '14',
'form_key' => 'concessions_etc',
'name' => 'Concessions etc',
'type' => 'textarea',
'value' => '',
'extra' => array(
'description' => 'Please add any additional pricing details, including any available concessions',
'title_display' => 0,
'private' => 0,
'resizable' => 0,
'disabled' => 0,
'conditional_operator' => '=',
'cols' => '',
'rows' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '0',
'weight' => '4',
'page_num' => 1,
),
17 => array(
'nid' => 4099,
'cid' => '17',
'pid' => '0',
'form_key' => 'type_of_event',
'name' => 'Type of event',
'type' => 'fieldset',
'value' => '',
'extra' => array(
'title_display' => 0,
'private' => 0,
'collapsible' => 0,
'collapsed' => 0,
'conditional_operator' => '=',
'description' => '',
'conditional_component' => '',
'conditional_values' => '',
),
'mandatory' => '0',
'weight' => '4',
'page_num' => 1,
),
18 => array(
'nid' => 4099,
'cid' => '18',
'pid' => '17',
'form_key' => 'event_category',
'name' => 'Event Category',
'type' => 'select',
'value' => '',
'extra' => array(
'items' => "615|Advice, jobs and training\n629|Art and crafts\n646|Children and families\n653|Cinema/film\n654|Comedy\n619|Community events\n648|Energy efficiency scheme\n649|Food market\n618|Health and well-being\n647|Literature\n636|Local history\n623|Music\n632|Nature and wildlife\n652|Other\n622|Play session\n639|Sports\n642|Theatre and dance\n",
'options_source' => 'event_category',
'multiple' => 1,
'title_display' => 'none',
'private' => 0,
'aslist' => 0,
'optrand' => 0,
'other_option' => NULL,
'other_text' => 'Other...',
'description' => '',
'custom_keys' => FALSE,
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '4',
'page_num' => 1,
),
19 => array(
'nid' => 4099,
'cid' => '19',
'pid' => '17',
'form_key' => 'please_give_details',
'name' => 'Please give any other details',
'type' => 'textarea',
'value' => '',
'extra' => array(
'title_display' => 0,
'private' => 0,
'resizable' => 0,
'disabled' => 0,
'webform_conditional_field_value' => "Other\n652",
'webform_conditional_cid' => '18',
'webform_conditional_operator' => '=',
'cols' => '',
'rows' => '',
'description' => '',
'attributes' => array(),
'conditional_component' => '',
'conditional_operator' => '=',
'conditional_values' => '',
),
'mandatory' => '1',
'weight' => '5',
'page_num' => 1,
),
)

0

Решение

Попробуй это:

 eval("\$array = " . $stringArrayData);

Затем,

print_r($array);
0

Другие решения

Если у вас есть такая возможность, желательно, чтобы вы хранили элементы по отдельности — это будет намного проще изменить части данных, и позволит вам абстрагироваться от языка, который вы используете, из хранилища данных

Если это не вариант, рассмотрите возможность хранения данных другим способом — возможно сериализации данные, прежде чем сохранить их в БД, а затем десериализовать их при получении. Unserialize сохраняет тип данных и структуру.

Если вы не можете этого сделать, то вам, вероятно, придется проанализировать строку и построить из нее новый массив, или перевести всю строку в переменную, а затем использовать переменную.

1

# try this:
# fileA:array.txt(file contains the strings)
# fileB:

$ar_source = include 'array.txt';
var_dump($ar_source );
0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector