2011-02-03 2 views
0

xmlファイルをSimpleXMLで解析するためのPHPコードを書きましたが、それが役立つ場合はインクルードすることができます。xmlをナビゲーション用に解析するために使用する言語

これは、私は、ノードを選択するために解析し、XPATHするだけのSimpleXMLを使って考えていた

<root name="menutest"> 
     <menu> 
      <nav name="home" path="index.php" /> 

      <nav name="menulink1" path="link1.php"> 
       <nav name="menulink1child1" path="menulink1childlink1.php"> 
       <nav name="menulink1child1child1" 
         path="menulink1childlink1childlink1.php" /> 
       </nav> 
      </nav> 

      <nav name="menulink2" path="link2.php"> 
      <nav name="menulink1child2" path="menulink2childlink2.php"> 
       <nav name="menulink2child2child2" 
        path="menulink2childlink2childlink2.php" /> 
      </nav> 
      </nav> 

      <nav name="menulink3" path="link3.php"> 
      <nav name="menulink3child3" path="menulink3childlink3.php"> 
       <nav name="menulink3child3child3" 
         path="menulink3childlink3childlink3.php" /> 
      </nav> 
      </nav> 

      <nav name="menulink4" path="link4.php"> 
      <nav name="menulink4child4" 
        path="menulink4childlink4.php"> 
       <nav name="menulink4child4child4" 
        path="menulink4childlink4childlink4.php" /> 
      </nav> 
      </nav> 
     </menu> 
    </root> 

(ナビゲーションファイルは、本当に不気味行われてthatsの、変更することはできません)xmlファイルは次のようになりますし、 $ _SERVERリクエストを使用してページURLを使用しているので、正しいCSSスタイルを使用するために開いているメニュー項目を検出できます。名前= "menulink1child1child1をNAVするスタイルを追加します。 彼らはその要素

の子ページに行くときだけティア1のnav要素は

homepage: home | menulink1 | menulink2| menulink3 | menulink4 | 
menulink1: menulink1 
      -- childlink1 
      | menulink2 | menulink3 | menulink4 
すなわち、トップレベルのページとその後の子要素のために選択されるべきであることをメニューは、水平、垂直ではありません

は、その子要素だけではなく、自動的に以下のWebページ:)

マイQUESの新しい行に、親要素の正しい順序で表示する必要がありますということです。子要素を選択する条件を必要とするXMLナビゲーションファイルを解析する最善の方法は何ですか? xmlを変換するためにXSLを使用することを検討する必要がありますか?

TIA ジャレッド

+0

SimpleXMLを調べましたか? – Darren

+0

@Darrenはい、XMLを解析するために私が使ってきたことはありますが、ユーザーが特定のレベルのサイトに行くと、正しいノードをたどることが難しいと感じています。 – Jared

+0

@ Jared:この質問は明確ではありません...解析には、もちろんパーサが必要です。選択するには、XPathを使用できます。しかし、あなたはWebページについて話しており、このXML文書からWebページへのプロセスは明確ではありません。さらに、メニューを作成するためのCSSルールについて質問しているようです。 –

答えて

0

これは、XSLTの学習に投資する価値があります。それは、ある人が一目惚れして見つけた言語です。多くの人がそれをマスターする前に諦めていますが、一度それを悩ますと、この種の問題ではうまく機能し、サイドとクライアント側。

+0

マイケルに感謝しています。私はここ数日でxslを見てきました。私はこれが落とす方法であり、 XMLで。乾杯。 – Jared

関連する問題