如何使用PHP从另一个数组插入数组


How to insert array from another array using PHP?

大家好,我需要一些关于数组的帮助。我有3个数组,一个是base,另一个是header,最后一个是header字段。在我的PHP代码中,我使用CodeIgniter。

public function field_study() {
            $fields_header = array('Accounting/Finance','Admin/Human Resources','Arts/Media/Communications','Building/Construction','Computer/Information Technology','Education/Training','Engineering','Healthcare','Hotel/Restaurant','Manufacturing','Sales/Marketing','Sciences', 'Services', 'Others');
            $fields = array(
                array(
                    'Audit & Taxation',
                    'Bangking/Financial',
                    'Corporate Finance/Investment',
                    'General/Cost Accounting'
                ),
                array(
                    'Clerical/Administrative',
                    'Human Resources',
                    'Secretarial',
                    'Top Management',
                ),
                array(
                    'Advertising',
                    'Arts/Creative Design',
                    'Entertainment',
                    'Public Relations'
                ),
                array(
                    'Architect/Interior Design',
                    'Civil Engineering/Construction',
                    'Property/Real Estate',
                    'Quantity Serveying'
                ),
                array(
                    'IT - Hardware',
                    'IT - Network/Sys/DB Administrator',
                    'IT - Software',
                ),
                array(
                    'Education',
                    'Training $ Dev.'
                ),
                array(
                    'Chemical Engineering',
                    'Electrical Engineering',
                    'Electronics Engineering',
                    'Environmental Engineering',
                    'Industrial Engineering',
                    'Mechanical/Automotive Engineering',
                    'Oil/Gas Engineering',
                    'Other Engineering'
                ),
                array(
                    'Doctor/Diagnosis',
                    'Pharmacy',
                    'Nurse/Medical Support',
                ),
                array(
                    'Food/Beverage/Restaurant',
                    'Hotel/Tourism'
                ),
                array(
                    'Maintenance',
                    'Manufacturing',
                    'Process Design & Control',
                    'Purchasing/Material Mgmt',
                    'Quality Assurance'
                ),
                array(
                    'Sales - Corporate',
                    'Marketing/Business Dev',
                    'Merchandising',
                    'Retail Sales',
                    'Sales - Eng/Tech/IT',
                    'Sales - Financial Services',
                    'Telesales/Telemarketing' 
                ),
                array(
                    'Actuarial/Statistics',
                    'Agriculture',
                    'Aviation',
                    'Biotechnology',
                    'Chemistry',
                    'Food Tech/Nutritionist',
                    'Geology/Geographics',
                    'Science & Technology'
                ),
                 array(
                    'Security/Armed Forces',
                    'Customer Service',
                    'Logistics/Supply Chain',
                    'Law/Legal Services',
                    'Personal Care',
                    'Social Services',
                    'Tech & Helpdesk Support'
                ),
                array(
                    'General Work',
                    'Journalist/Editors',
                    'Publishing',
                    'Others'
                )
            );
            $main = array(
                    $fields_header, $fields
            );
            return $main;   
        }

我需要在我的表单中包含这个。因此,在我硬编码之后,我得到了这样的内容。

<select name="academic[1][field_study]" id="field_study" class="form-control">
                        <option value="" selected="selected">- Select Field Of Study -</option>
                        <optgroup label="Accounting/Finance">
                            <option value="Audit & Taxation">Audit & Taxation</option>
                            <option value="Banking/Financial">Banking/Financial</option>
                            <option value="Corporate Finance/Investment">Corporate Finance/Investment</option>
                            <option value="General/Cost Accounting">General/Cost Accounting</option>
                        </optgroup>             
                        <optgroup label="Admin/Human Resources">
                            <option value="Clerical/Administrative">Clerical/Administrative</option>
                            <option value="Human Resources">Human Resources</option>
                            <option value="Secretarial">Secretarial</option>
                            <option value="Top Management">Top Management</option>
                        </optgroup> 

但是我想要的是包含这个数组并在循环中使用它,但我不知道怎么做。你能帮我一下吗?好了,谢谢。

在这里使用关联数组是最简单的:

$fields = array(
    'Accounting/Finance' => array(
                    'Audit & Taxation',
                    'Bangking/Financial',
                    'Corporate Finance/Investment',
                    'General/Cost Accounting'
                ),
    'Admin/Human Resources' => array(
                    'Clerical/Administrative',
                    'Human Resources',
                    'Secretarial',
                    'Top Management',
                )
);

然后在html:

<?php foreach($fields AS $key => $val): ?>
<optgroup label="<?php echo $key; ?>">
    <?php foreach($val AS $option): ?>
    <option value="<?php echo $option; ?>"><?php echo $option; ?></option>
    <?php endforeach; ?>
</optgroup>
<?php endforeach; ?>