首頁 後端開發 php教程 分析HTML,并将结果存到一个数组中。看看里面的注释吧。:)_PHP

分析HTML,并将结果存到一个数组中。看看里面的注释吧。:)_PHP

Jun 01, 2016 pm 12:28 PM
the 分析 註解 結果


           /* 

            * parseHtml.php 

            * Author: Carlos Costa Jordao 

* Email: carlosjordao@yahoo.com
            * 

            * My notation of variables: 

            * i_ = integer, ex: i_count 

            * a_ = array,       a_html 

            * b_ = boolean, 

            * s_ = string 

            * 

            * What it does: 

            * - parses a html string and get the tags 

            *   - exceptions: html tags like

, etc 

            * - At the end, the array will look like this: 

            *      ["IMG"][0]["SRC"] = "xxx" 

            *      ["IMG"][1]["SRC"] = "xxx" 

            *      ["IMG"][1]["ALT"] = "xxx" 

            *      ["A"][0]["HREF"] = "xxx" 

            * 

            */
 

          
function parseHtml( $s_str ) 

          
{ 

            $i_indicatorL
= 0; 

            $i_indicatorR
= 0; 

            $s_tagOption
= ""; 

            $i_arrayCounter
= 0; 

            $a_html
= array(); 

           
// Search for a tag in string 

            while( is_int(($i_indicatorL=strpos($s_str,"
                    // Get everything into tag... 

                    $i_indicatorL++; 

                    $i_indicatorR = strpos($s_str,">", $i_indicatorL); 

                    $s_temp = substr($s_str, $i_indicatorL, ($i_indicatorR-$i_indicatorL) ); 

                    $a_tag = explode( ' ', $s_temp ); 

                    // Here we get the tag's name 

                    list( ,$s_tagName,, ) = each($a_tag); 

                    $s_tagName = strtoupper($s_tagName); 

                    // Well, I am not interesting in
,
or anything else like that... 

                    // So, this is false for tags without options. 

                    $b_boolOptions = is_array(($s_tagOption=each($a_tag))) && $s_tagOption[1]; 

                    if( $b_boolOptions ) { 

                            // Without this, we will mess up the array 

                            $i_arrayCounter = (int)count($a_html[$s_tagName]); 

                            // get the tag options, like src="htt://". Here, s_tagTokOption is 'src'

and s_tagTokValue is '"http://"'



                            do { 

                              $s_tagTokOption = strtoupper(strtok($s_tagOption[1], "=")); 

                              $s_tagTokValue  = trim(strtok("=")); 

                              $a_html[$s_tagName][$i_arrayCounter][$s_tagTokOption] =

$s_tagTokValue; 

                              $b_boolOptions = is_array(($s_tagOption=each($a_tag))) &&

$s_tagOption[1]; 

                            } while( $b_boolOptions ); 

                    } 

            } 

            return $a_html; 

           } 



           ?>
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

便捷使用PyCharm快捷鍵實現多行註釋 便捷使用PyCharm快捷鍵實現多行註釋 Jan 27, 2024 am 08:02 AM

PyCharm多行註解快速鍵:讓程式碼註解更便捷,需要具體程式碼範例在日常的程式設計工作中,程式碼註解是非常重要的一部分。它不僅可以提高程式碼的可讀性和可維護性,還能幫助其他開發人員理解程式碼的意圖和設計思路。然而,手動添加程式碼註解往往是一項耗時而繁瑣的工作。為了讓我們的程式碼註解更加高效,PyCharm提供了多行註解的快捷鍵。在PyCharm中,我們可以使用Ctrl+/

2 個月不見,人形機器人 Walker S 會摺衣服了 2 個月不見,人形機器人 Walker S 會摺衣服了 Apr 03, 2024 am 08:01 AM

機器之能報道編輯:吳昕國內版的人形機器人+大模型組隊,首次完成疊衣服這類複雜柔性材料的操作任務。隨著融合了OpenAI多模態大模型的Figure01揭開神秘面紗,國內同行的相關進展一直備受關注。就在昨天,國內"人形機器人第一股"優必選發布了人形機器人WalkerS深入融合百度文心大模型後的首個Demo,展示了一些有趣的新功能。現在,得到百度文心大模型能力加持的WalkerS是這個樣子的。和Figure01一樣,WalkerS沒有走動,而是站在桌子後面完成一系列任務。它可以聽從人類的命令,折疊衣物

如何在uniapp中實現資料統計與分析 如何在uniapp中實現資料統計與分析 Oct 24, 2023 pm 12:37 PM

如何在uniapp中實現資料統計和分析一、背景介紹資料統計和分析是行動應用開發過程中非常重要的一環,透過對使用者行為的統計和分析,開發者可以深入了解使用者的喜好和使用習慣,從而優化產品設計和使用者體驗。本文將介紹如何在uniapp中實現資料統計和分析的功能,並提供一些具體的程式碼範例。二、選擇合適的資料統計和分析工具在uniapp中實現資料統計和分析的第一步是選擇合

如何優化Java程式碼的可維護性:經驗與建議 如何優化Java程式碼的可維護性:經驗與建議 Nov 22, 2023 pm 05:18 PM

如何優化Java程式碼的可維護性:經驗與建議在軟體開發過程中,編寫具有良好可維護性的程式碼是至關重要的。可維護性意味著程式碼能夠被輕鬆理解、修改和擴展,而不會引發意外的問題或額外的工作量。對於Java開發者來說,如何優化程式碼的可維護性是一個重要課題。本文將分享一些經驗和建議,幫助Java開發者提升其程式碼的可維護性。遵循規範的命名規則規範的命名規則能夠使程式碼更易讀,

如何在iPhone上為已儲存的密碼添加註釋 如何在iPhone上為已儲存的密碼添加註釋 Feb 28, 2024 pm 07:41 PM

iCloud鑰匙圈可讓您更方便管理密碼,無需依賴記憶或猜測網站或使用者名稱。您可以透過在iCloud鑰匙圈中為應用程式和網站的現有密碼添加註釋來實現這一點。在這篇文章中,我們將說明如何為您儲存在iPhone上的iCloud鑰匙圈中的密碼新增註解。要求您需要滿足一些要求才能在iCloud鑰匙圈中使用這項新功能。運行iOS15.4或更高版本的iPhone密碼儲存在iCloud鑰匙串中的有效AppleID有效的互聯網連接如何為保存的密碼添加註釋毋庸置疑,您應該在iCloudKeychain中存儲一些密

PyCharm註解操作指南:最佳化程式碼編寫體驗 PyCharm註解操作指南:最佳化程式碼編寫體驗 Feb 21, 2024 pm 06:27 PM

PyCharm註解操作指南:最佳化程式碼編寫體驗在日常的程式碼編寫中,註解是非常重要的一環。良好的註解不僅可以提高程式碼的可讀性,還能幫助其他開發人員更好地理解和維護程式碼。 PyCharm作為一個強大的Python整合開發環境,在註解方面也提供了豐富的功能和工具,可以大幅優化程式碼編寫體驗。本文將介紹如何在PyCharm中進行註釋操作,以及如何利用PyCharm的註釋

織夢CMS二級目錄打不開的原因分析 織夢CMS二級目錄打不開的原因分析 Mar 13, 2024 pm 06:24 PM

標題:解析織夢CMS二級目錄打不開的原因及解決方案織夢CMS(DedeCMS)是一款功能強大的開源內容管理系統,被廣泛應用於各類網站建設中。然而,有時在搭建網站過程中可能會遇到二級目錄無法開啟的情況,這給網站的正常運作帶來了困擾。在本文中,我們將分析二級目錄打不開的可能原因,並提供具體的程式碼範例來解決這個問題。一、可能的原因分析:偽靜態規則配置問題:在使用

分享PyCharm中快速註解程式碼的技巧,提高工作效率 分享PyCharm中快速註解程式碼的技巧,提高工作效率 Jan 04, 2024 pm 12:02 PM

效率提升! PyCharm中快速註解程式碼的方法分享在日常的軟體開發工作中,我們經常需要註解掉一部分程式碼進行偵錯或調整。如果手動逐行添加註釋,這無疑會增加我們的工作量和耗費時間。而PyCharm作為一款強大的Python整合開發環境,提供了快速註解程式碼的功能,大大提升了我們的開發效率。本文將分享一些在PyCharm中快速註解程式碼的方法,並提供具體的程式碼範例。單

See all articles