如何在PHP中生成唯一的数字范围

时间:2016-09-14 15:15:28

标签: php

我一直在尝试编写一个使用PHP生成特定细节的代码。到目前为止,这是我能够提出的:

$meta_key = array();
$meta_key[1] = 'nickname';
$meta_key[2] = 'first_name';
$meta_key[3] = 'last_name';
$meta_key[4] = 'description';
$meta_key[5] = 'rich_editing';
$meta_key[6] = 'comment_shortcuts';
$meta_key[7] = 'admin_color';
$meta_key[8] = 'use_ssl';
$meta_key[9] = 'show_admin_bar_front';
$meta_key[10] = 'capabilities';
$meta_key[11] = 'user_level';
$meta_key[12] = 'dismissed_pointers';
$meta_key[13] = 'key_confirm';
$meta_key[14] = 'session_tokens';

$meta_value = array();
$meta_value[1] = '';
$meta_value[2] = '';
$meta_value[3] = '';
$meta_value[4] = '';
$meta_value[5] = 'true';
$meta_value[6] = 'false';
$meta_value[7] = 'fresh';
$meta_value[8] = '0';
$meta_value[9] = 'true';
$meta_value[10] = 'a:1:{s:10:"subscriber";b:1;}';
$meta_value[11] = '0';
$meta_value[12] = '';
$meta_value[13] = '';
$meta_value[14] = '';

for ($id=1; $id<=14; $id++) {
echo "('" . $id . "', " . "'" . $meta_key[$id] . "', '" . $meta_value[$id] . "'),<br />";
}

这就是结果:

('1', 'nickname', ''),
('2', 'first_name', ''),
('3', 'last_name', ''),
('4', 'description', ''),
('5', 'rich_editing', 'true'),
('6', 'comment_shortcuts', 'false'),
('7', 'admin_color', 'fresh'),
('8', 'use_ssl', '0'),
('9', 'show_admin_bar_front', 'true'),
('10', 'capabilities', 'a:1:{s:10:"subscriber";b:1;}'),
('11', 'user_level', '0'),
('12', 'dismissed_pointers', ''),
('13', 'key_confirm', ''),
('14', 'session_tokens', ''),

但我真正想要实现的是让它以一系列数字显示,让我们从1-5开始说。像这样:

('1', 'nickname', ''),
('1', 'first_name', ''),
('1', 'last_name', ''),
('1', 'description', ''),
('1', 'rich_editing', 'true'),
('1', 'comment_shortcuts', 'false'),
('1', 'admin_color', 'fresh'),
('1', 'use_ssl', '0'),
('1', 'show_admin_bar_front', 'true'),
('1', 'capabilities', 'a:1:{s:10:"subscriber";b:1;}'),
('1', 'user_level', '0'),
('1', 'dismissed_pointers', ''),
('1', 'key_confirm', ''),
('1', 'session_tokens', ''),

下一个将是2,3,4等等。

1 个答案:

答案 0 :(得分:2)

为什么不首先建立这样的阵列?

$data = array(
   array(
       'nickname' => '...',
       'first_name' => 'John', 
        etc...
   ),
   array(
        'nickname' => '...',
        'first_name' => 'Fred',
        etc...
   )
);

然后你不需要多个数组来跟踪名称,只需要一个,以及几个循环:

foreach($data as $id => $person) {
   foreach($person as $key => $value) {
        echo "($id) $key -> $value";
   }
}
相关问题