ホームページ バックエンド開発 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 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

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

Machine Power Report 編集者: Wu Xin 国内版の人型ロボット + 大型模型チームは、衣服を折りたたむなどの複雑で柔軟な素材の操作タスクを初めて完了しました。 OpenAIのマルチモーダル大規模モデルを統合したFigure01の公開により、国内同業者の関連動向が注目を集めている。つい昨日、中国の「ヒューマノイドロボットのナンバーワン株」であるUBTECHは、Baidu Wenxinの大型モデルと深く統合されたヒューマノイドロボットWalkerSの最初のデモを公開し、いくつかの興味深い新機能を示した。 Baidu Wenxin の大規模モデル機能の恩恵を受けた WalkerS は次のようになります。 Figure01 と同様に、WalkerS は動き回るのではなく、机の後ろに立って一連のタスクを完了します。人間の命令に従って服をたたむことができる

uniapp でデータの統計と分析を実装する方法 uniapp でデータの統計と分析を実装する方法 Oct 24, 2023 pm 12:37 PM

uniapp でデータの統計と分析を実装する方法 1. 背景の紹介 データの統計と分析はモバイル アプリケーション開発プロセスの非常に重要な部分であり、ユーザーの行動の統計と分析を通じて、開発者はユーザーの好みと使用状況を深く理解できます。これにより、製品デザインとユーザーエクスペリエンスが最適化されます。この記事では、uniapp にデータの統計と分析機能を実装する方法と、いくつかの具体的なコード例を紹介します。 2. 適切なデータ統計および分析ツールの選択 uniapp でデータ統計および分析を実装する最初のステップは、適切なデータ統計および分析ツールを選択することです。

Java コードの保守性を最適化する方法: 経験とアドバイス Java コードの保守性を最適化する方法: 経験とアドバイス Nov 22, 2023 pm 05:18 PM

Java コードの保守性を最適化する方法: 経験とアドバイス ソフトウェア開発プロセスでは、保守性の高いコードを作成することが重要です。保守性とは、予期せぬ問題や追加の労力を引き起こすことなく、コードを簡単に理解、変更、拡張できることを意味します。 Java 開発者にとって、コードの保守性を最適化する方法は重要な問題です。この記事では、Java 開発者がコードの保守性を向上させるのに役立ついくつかの経験と提案を共有します。標準化された命名規則に従うと、コードが読みやすくなります。

iPhoneに保存したパスワードにメモを追加する方法 iPhoneに保存したパスワードにメモを追加する方法 Feb 28, 2024 pm 07:41 PM

iCloud キーチェーンを使用すると、Web サイトやユーザー名を記憶したり推測したりすることなく、パスワードの管理が簡単になります。これを行うには、iCloud キーチェーン内のアプリや Web サイトの既存のパスワードにメモを追加します。この記事では、iPhoneのiCloudキーチェーンに保存したパスワードにメモを追加する方法を説明します。要件 iCloud キーチェーンのこの新機能を使用するには、満たす必要のある要件がいくつかあります。 iOS 15.4 以降を実行している iPhone iCloud キーチェーンに保存されているパスワード 有効な Apple ID 有効なインターネット接続 保存されたパスワードにメモを追加する方法 一部のパスワードを iCloud キーチェーンに保存する必要があることは言うまでもありません。

PyCharm アノテーション操作ガイド: コード記述エクスペリエンスの最適化 PyCharm アノテーション操作ガイド: コード記述エクスペリエンスの最適化 Feb 21, 2024 pm 06:27 PM

PyCharm コメント操作ガイド: コード作成エクスペリエンスの最適化 日々のコード作成において、コメントは非常に重要な部分です。良いコメントは、コードの読みやすさを向上させるだけでなく、他の開発者がコードをよりよく理解し、保守するのにも役立ちます。強力な Python 統合開発環境として、PyCharm はコード記述エクスペリエンスを大幅に最適化できるアノテーションに関する豊富な機能とツールも提供します。この記事では、PyCharmでアノテーション操作を行う方法と、PyCharmのアノテーションの活用方法を紹介します。

DreamWeaver CMS のセカンダリディレクトリを開けない原因の分析 DreamWeaver CMS のセカンダリディレクトリを開けない原因の分析 Mar 13, 2024 pm 06:24 PM

タイトル: DreamWeaver CMS のセカンダリディレクトリを開けない原因と解決策の分析 Dreamweaver CMS (DedeCMS) は、さまざまな Web サイトの構築に広く使用されている強力なオープンソースのコンテンツ管理システムです。ただし、Web サイトの構築中に、セカンダリ ディレクトリを開けない状況が発生し、Web サイトの通常の動作に問題が発生することがあります。この記事では、セカンダリ ディレクトリを開けない考えられる理由を分析し、この問題を解決するための具体的なコード例を示します。 1. 考えられる原因分析: 疑似静的ルール構成の問題: 使用中

PyCharm でコードにすばやくコメントを付けて作業効率を向上させるためのヒントを共有する PyCharm でコードにすばやくコメントを付けて作業効率を向上させるためのヒントを共有する Jan 04, 2024 pm 12:02 PM

効率が向上しました! PyCharmでコードを素早くコメントアウトする方法を共有 日々のソフトウェア開発作業では、デバッグや調整のためにコードの一部をコメントアウトする必要があることがよくあります。コメントを 1 行ずつ手動で追加すると、間違いなく作業量が増加し、時間がかかります。 PyCharm は強力な Python 統合開発環境として、コードに迅速にアノテーションを付ける機能を提供し、開発効率を大幅に向上させます。この記事では、PyCharm でコードに素早く注釈を付ける方法をいくつか紹介し、具体的なコード例を示します。 1つ

See all articles