你可以尝试这样的事情提取所有发票编号:
<?php
$input = "<body>
<p>Invoice ID: 0201</p>
<p>MID : Q987</p>
<p>Desciption: Solid Concrete Blocks</p>
<p>Qty: 7478 Blocks </p>
<p> </p>
<p>Invoice ID: 0324</p>
<p>MID : Q443</p>
<p>Desciption: Window Slides with Chrome </p>
<p>Qty: 33 Units </p>
</body>";
$invoice_ids = array();
if(preg_match_all('{<p>Invoice ID:\s*(\d+)</p>}',$input,$matches)) {
$invoice_ids = $matches[1];
}
var_dump($invoice_ids);
?>
输出:
array(2) {
[0]=>
string(4) "0201"
[1]=>
string(4) "0324"
}
一旦你已经提取的所有发票号码,你可以在它们插入数据库表使用类似:
<?php
$con = mysql_connect("localhost","USRNAME","PASSWD");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("DB_NAME", $con);
foreach($invoice_ids as $id) {
$query = "INSERT INTO YOUR_TABLE_NAME(invoice_num) VALUES $id";
if(!mysql_query($query,$con)) {
die('Error: ' . mysql_error());
}
}
mysql_close($con)
?>
向我们展示了发票号码在html中的样子。建议使用像http://simplehtmldom.sourceforge.net/这样的HTML解析工作。 – codaddict 2010-03-03 09:34:06
请为受访者提供一些示例HTML。 – 2010-03-03 09:34:09
非常非常。请参阅http://www.tuxradar.com/practicalphp – Gordon 2010-03-03 09:36:12