如何一次插入所有下拉记录?

How to insert all dropdown record at a time?

我在一个下拉框中有大量的记录(大约27000条以上)。

HTML -

<select name="manufacturer" id="manufacturer">
    <option value="">Select a Builder</option>
    <option value="1-hull">#1 Hull</option>
    <option value="49er">49er</option>
    <option value="a-m-f">A M F</option>
    <option value="a-m-manufacturing">A&amp;M Manufacturing</option>
    <option value="a1-custom-trailers">A1 Custom Trailers</option>
     - -    -    -  -      -
     -     -   -    -   -  -
    <option value="zuma">Zuma</option>
</select>

上面的下拉列表是我从不同网站收集的数据。我想在我自己的网站上放置动态内容。我试图一条一条地插入,单手插入所有记录是不可能的。所以我想使用任何快捷方式将所有这些文本插入我的 MySQL 数据库 table。我需要选项 inner HTML text 将插入到我的数据库 table.

如果我将在 Array 中获取所有选项文本,那么我可以轻松地管理它。但是我很困惑如何使用 PHP 代码获取 Array 中的所有文本。

这是 preg_match_all

的解决方案
<?php

$string = '<option value="">Select a Builder</option>
    <option value="1-hull">#1 Hull</option>
    <option value="49er">49er</option>
    <option value="a-m-f">A M F</option>
    <option value="a-m-manufacturing">A&amp;M Manufacturing</option>
    <option value="a1-custom-trailers">A1 Custom Trailers</option>
    <option value="zuma">Zuma</option>
';

preg_match_all('/>(.*?)<\//',$string,$matches);

var_dump($matches[1]);
?>

DOM Document是你的好友,

$str = '<select name="manufacturer" id="manufacturer">
        <option value="">Select a Builder</option>
        <option value="1-hull">#1 Hull</option>
        <option value="49er">49er</option>
        <option value="a-m-f">A M F</option>
        <option value="a-m-manufacturing">A&amp;M Manufacturing</option>
        <option value="a1-custom-trailers">A1 Custom Trailers</option>
        <option value="zuma">Zuma</option>
        </select>';    

$doc = new DOMDocument();
$doc->loadHTML($str);

$options = $doc->getElementsByTagName('option');

foreach ($options as $option) {
    $value[] = $option->nodeValue;
}

$value; // will contain array with all option values

Why you should not parse HTML with regex?