javascript - php如何像js一樣解析DOM?

來源:互聯網
上載者:User
js就是為html而生,比如,我想驗證

那麼用jquery的話,alert($('#demo_div').attr('display'))就行,但是如果我用伺服器端的php如何抓取一個網頁中DOM元素,然後結合css來分析它的css屬性呢?有沒有已經寫好的函數or類?

回複內容:

js就是為html而生,比如,我想驗證

那麼用jquery的話,alert($('#demo_div').attr('display'))就行,但是如果我用伺服器端的php如何抓取一個網頁中DOM元素,然後結合css來分析它的css屬性呢?有沒有已經寫好的函數or類?

補充3:

請在給題主的問題點“贊”之前,好好閱讀本問題的補充2評論7樓,想一下是否應該這樣做。

樓主的Y問題本身倒還可以,但題主弄出XY Problem的不良實踐,理應再得到一次教訓。

補充2:

好嘛你個題主!

鬧了半天,一短一長兩個答案,調動3個會員6層樓評論,問你半天你才說出最終要做什麼!!!

幹嘛不早把你的本來目的交代清楚?!

典型的XY Problem——刻舟求劍,問非所求,必須要先麻煩社區半天才能找出來你的目的,真是一點意思也沒有。題主請先閱讀一下這篇文章。

我看了下題主的問題的反響,幾乎所有的問題都是負分,我想題主你這個問題又該找踩了。

你還是好好回去反省下吧,多讀幾遍《提問的智慧》,少給社區留下一些莫名其妙、浪費時間的猜謎遊戲。

補充1:

你也許可以考慮用PHP調用一個只支援HTML+CSS(不帶js)的渲染核心,然後把渲染結果拿來利用。這樣至少就可以:

  • 適當容忍HTML中的微小問題,得到一個標準的樹形DOM結構
  • 準確處理CSS覆蓋關係,正確得到特定元素的任意CSS屬性

如果想做斬草除根的實現,就不要想著只在PHP的架構內做得到這個事情。

完全實現你這個需求,單純依賴任何PHP庫,死也做不到。任何。死也不行。沒疑問。

因為一個簡單的原理:如果只分析網頁的HTML字串文本,我們完全無法判斷demo_div最後的某個屬性,會處在一個什麼狀態上。

例如你的例子裡,display屬性是用額外的

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.