在 PHP 中使用数组自动填充选择框

发布于 2024-10-21 12:39:40 字数 165 浏览 2 评论 0原文

如果我有一个选择框

<select><option>...<option></select>

,并且使用 php 有一个 1-12 之间的值数组

,我将如何使用该数组自动填充该选择框?

If i had a select box

<select><option>...<option></select>

and I had an array of values from 1-12

using php, how would I auto populate that select box using that array?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

小…红帽 2024-10-28 12:39:40

假设数组看起来像:

$array = array(
  1=>"My first option",
  2=> "My second option"
);

<select>
  <?php foreach($array as $key => $value) { ?>
    <option value="<?php echo $key ?>"><?php echo $value ?></option>
  <?php }?>
</select>

supposing the array looks like:

$array = array(
  1=>"My first option",
  2=> "My second option"
);

<select>
  <?php foreach($array as $key => $value) { ?>
    <option value="<?php echo $key ?>"><?php echo $value ?></option>
  <?php }?>
</select>
北凤男飞 2024-10-28 12:39:40

您可以创建自己的简单函数,如下所示:

function generateSelectFromArray($array){
  // echo your opening Select
  echo "<select>";
  // Use simple foreach to generate the options
  foreach($array as $key => $value) {
    echo "<option value=' $key '> $value </option>";
   }
   echo "</select>";
}

用法:

$array = array(
 1=>"My first option",
 2=> "My second option"
);

generateSelectFromArray($array);

You could make your own simple function as below:

function generateSelectFromArray($array){
  // echo your opening Select
  echo "<select>";
  // Use simple foreach to generate the options
  foreach($array as $key => $value) {
    echo "<option value=' $key '> $value </option>";
   }
   echo "</select>";
}

Usage:

$array = array(
 1=>"My first option",
 2=> "My second option"
);

generateSelectFromArray($array);
眼中杀气 2024-10-28 12:39:40

没有单一的方法可以做到这一点,但您可能会这样做:

<select>
<?=getMyOptions()?>
</select>

其中 getMyOptions() 是一个函数调用,用于检索选项(例如从数据库中)并以以下格式打印每个选项

<option value="x">XXX</option>

就个人而言,我倾向于使用通用函数我调用 printAsOptions()。该函数接受一个对象数组。它期望数组中的对象有一个名为“id”的字段和一个名为“name”的字段。它迭代数组并为每个项目打印上面的选项。通过这种方式,您可以创建一个函数来获取对象数组(例如从数据库中),而无需混合表示逻辑。表示逻辑由通用 printAsOptions() 函数处理。

There's no single way to do it but you might do something like:

<select>
<?=getMyOptions()?>
</select>

where getMyOptions() is a function call that retrieves the options (from a database for example) and prints each one in the format

<option value="x">XXX</option>

Personally, I tend to use a generic function which I call printAsOptions(). This function takes an array of objects. It expects that the objects in the array have a field called "id" and a field called "name". It iterates through the array and prints an option as above for each item. This way, you can create one function for fetching the array of objects (from a database for example) without mixing in presentation logic. The presentation logic is handled by the generic printAsOptions() function.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文