国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

PHP獲取網頁上任意表格中內容的通用程序的制作

2024-05-04 23:04:54
字體:
來源:轉載
供稿:網友
  轉載請聯系作者:email: [email protected]   [email protected]

  在工作中,經常需要對網頁上的表格內容進行處理,但是,由于表格內容制作過程中的隨意性,跨行跨列經常發生,所以我作了這幾個函數,以獲取表格的內容,程序中重要的地方已作了注解,所以在此不再重復說明,經過測試,非常成功.所以拿出來供大家共享.
<?php
//作者: 王朋武
//日期: 2005,3,31
//目的: 獲取網頁上(任意跨行跨列的)表格中的內容
function fun_proc_rowspan($l_str)
{
 $l_a = explode("/n", $l_str);
 for($i=count($l_a)-1; $i>=0; $i--) {
  $l_str = trim($l_a[$i]);
  if(empty($l_str)) continue;
 
  $l_str = eregi_replace("<td", "<b><td", $l_str);
  $l_b = explode("<b>", $l_str); //如有n個<b>,則分成(n+1)個組,最開始一項為空.
  for($j=0; $j<count($l_b); $j++) { /*不能反過來(即從右開始),否則在有些情況下會有錯誤,因為在表格的一行中如有幾個連續的格跨行,則必須從左開始,否則下一行的列數就可能不夠計算,即計算跨行時保存的列有可能大于下一行的總列數, 則操作就不會成功. 實測也證明.
  如 +----+----+----+----+----+----+----+
     +----+----+----+----+----+----+----+此一行保存7格, 前6格都有rowspan=2
     +-----------------------------+----+此一行只保存2格
     +----------------------------------+此一行只保存1格
  */
   $l_str = trim($l_b[$j]);
   if(eregi("rowspan", $l_str)) {
    $rowspan = preg_replace("/^<td.+rowspan=[/"/']?(/d{1,2})[/"/']?.*/", "    $rowcont = preg_replace("/^<td.+rowspan=[/"/']?/d{1,2}[/"/']?.*>(.+)<//td>/", "    $l_a = fun_add_row_td($l_a, $i, $j, $rowspan, $rowcont);
    $l_str = implode("/n", $l_a);
    return $l_str;
   }
  }//end of for j
 }//end of for i
 return $l_str;
}
<body>
<table width="200" border="1" cellspacing="0" cellpadding="0">
  <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
    <td>4</td>
    <td>5</td>
    <td>6</td>
    <td>7</td>
  </tr>
  <tr>
    <td>a1</td>
    <td rowspan="7">22</td>
    <td>a2</td>
    <td colspan="4">a3</td>
  </tr>
  <tr>
    <td>b1</td>
    <td colspan="2">b2</td>
    <td>b3</td>
    <td>b4</td>
    <td rowspan="4">33</td>
  </tr>
  <tr>
    <td>c1</td>
    <td>c2</td>
    <td>c3</td>
    <td>c4</td>
    <td rowspan="2">44</td>
  </tr>
  <tr>
    <td>d1</td>
    <td>d2</td>
    <td>d3</td>
    <td>d4</td>
  </tr>
  <tr>
    <td>e1</td>
    <td>e2</td>
    <td>e3</td>
    <td>e4</td>
    <td>e5</td>
  </tr>
  <tr>
    <td>f1</td>
    <td>f2</td>
    <td colspan="4">f3</td>
  </tr>
  <tr>
    <td>g1</td>
    <td colspan="5">g2</td>
  </tr>
  <tr>
    <td colspan="7">h1</td>
  </tr>
  <tr>
    <td>i1</td>
    <td colspan="3">i2</td>
    <td>i3</td>
    <td>i4</td>
    <td>i5</td>
  </tr>
  <tr>
    <td>j1</td>
    <td colspan="3">j2</td>
    <td>j3</td>
    <td colspan="2">j4</td>
  </tr>
  <tr>
    <td colspan="6">k1</td>
    <td>k2</td>
  </tr>
  <tr>
    <td colspan="6">l1</td>
    <td>l2</td>
  </tr>
  <tr>
    <td colspan="5">m1</td>
    <td>m2</td>
    <td>m3</td>
  </tr>
</table>
</body>
</html>
<table border='1'>
<tr>    <td>1</td>    <td>2</td>    <td>3</td>    <td>4</td>    <td>5</td>    <td>6</td>    <td>7</td> </tr>
<tr><td>a1</td>    <td ="7">22</td>    <td>a2</td>    <td ="4">a3</td>  <td>a3</td><td>a3</td><td>a3</td></tr>
<tr><td>b1</td>    <td>22</td><td ="2">b2</td>    <td>b2</td><td>b3</td>    <td>b4</td>    <td ="4">33</td>  </tr>
<tr><td>c1</td>    <td>22</td><td>c2</td>    <td>c3</td>    <td>c4</td>    <td ="2">44</td>  <td>33</td></tr>
<tr><td>d1</td>    <td>22</td><td>d2</td>    <td>d3</td>    <td>d4</td>  <td>44</td><td>33</td></tr>
<tr><td>e1</td>    <td>22</td><td>e2</td>    <td>e3</td>    <td>e4</td>    <td>e5</td>  <td>33</td></tr>
<tr><td>f1</td>    <td>22</td><td>f2</td>    <td ="4">f3</td>  <td>f3</td><td>f3</td><td>f3</td></tr>
<tr><td>g1</td>    <td>22</td><td ="5">g2</td>  <td>g2</td><td>g2</td><td>g2</td><td>g2</td></tr>
<tr><td ="7">h1</td>  <td>h1</td><td>h1</td><td>h1</td><td>h1</td><td>h1</td><td>h1</td></tr>
<tr><td>i1</td>    <td ="3">i2</td>    <td>i2</td><td>i2</td><td>i3</td>    <td>i4</td>    <td>i5</td>  </tr>
<tr><td>j1</td>    <td ="3">j2</td>    <td>j2</td><td>j2</td><td>j3</td>    <td ="2">j4</td>  <td>j4</td></tr>
<tr><td ="6">k1</td>    <td>k1</td><td>k1</td><td>k1</td><td>k1</td><td>k1</td><td>k2</td>  </tr>
<tr><td ="6">l1</td>    <td>l1</td><td>l1</td><td>l1</td><td>l1</td><td>l1</td><td>l2</td>  </tr>
<tr><td ="5">m1</td>    <td>m1</td><td>m1</td><td>m1</td><td>m1</td><td>m2</td>    <td>m3</td>  </tr>
</table>
1234567
a122a2a3
b1b2b3b433
c1c2c3c444
d1d2d3d4
e1e2e3e4e5
f1f2f3
g1g2
h1
i1i2i3i4i5
j1j2j3j4
k1k2
l1l2
m1m2m3

1234567
a122a2a3a3a3a3
b122b2b2b3b433
c122c2c3c44433
d122d2d3d44433
e122e2e3e4e533
f122f2f3f3f3f3
g122g2g2g2g2g2
h1h1h1h1h1h1h1
i1i2i2i2i3i4i5
j1j2j2j2j3j4j4
k1k1k1k1k1k1k2
l1l1l1l1l1l1l2
m1m1m1m1m1m2m3

中國最大的web開發資源網站及技術社區,
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 马鞍山市| 五指山市| 县级市| 靖宇县| 翁源县| 桐柏县| 舒兰市| 新巴尔虎左旗| 清原| 保山市| 抚顺县| 繁昌县| 百色市| 鄂温| 朔州市| 图片| 南召县| 佛学| 白城市| 平罗县| 土默特右旗| 江阴市| 秦皇岛市| 获嘉县| 班戈县| 孝义市| 张家港市| 清镇市| 若羌县| 呼玛县| 新宁县| 柞水县| 大荔县| 自治县| 西平县| 盐城市| 社旗县| 鄄城县| 荣昌县| 三台县| 修文县|