Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > เครื่องมือ DOM กับ XML Parser ต่างกันอย่างไร แล้วผมควรใช้อะไรคับ



 

เครื่องมือ DOM กับ XML Parser ต่างกันอย่างไร แล้วผมควรใช้อะไรคับ

 



Topic : 034411



โพสกระทู้ ( 3,468 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter



เครื่องมือ DOM กับ XML Parser ต่างกันอย่างไร แล้วผมควรใช้อะไรคับ

คือตอนนี้ผมต้องทำการดึงอัตราแลกเปลี่ยน ? บาทต่อดอลล่าห์ น่ะคับ ไม่ทราบว่าควรใช้อันไหนดีระหว่าง DOM และ XML parser และอยากรู้ว่าสองตัวนี้มันต่างกันยังไง ใช้อย่างไรด้วยคับ



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2009-11-15 10:15:59 By : pjgunner View : 4827 Reply : 9
 

 

No. 1



โพสกระทู้ ( 3,468 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter

ไม่มีใครตอบ ขอขุดนิดนะ

ผมใช้ DOM นะคับ แต่ทำไมผมเอา element ที่มี localName ป่าวหว่า ไม่ได้คับ






Date : 2009-11-16 23:04:28 By : pjgunner
 


 

No. 2



โพสกระทู้ ( 381 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Quote:
เครื่องมือ DOM กับ XML Parser ต่างกันอย่างไร แล้วผมควรใช้อะไรคับ


XML Parser มีความเร็วในการอ่านข้อมูล เร็วกกว่า และใช้หน่วยความจำน้อยกว่า DOM API ครับ
เนื่องจาก XML Parser จะ อ่านเฉพาะจุดที่เราต้องการครับและมีฟังก์ชั่นจัดการหน่วยความจำแล้วก็คืนหน่วยความจำ
แต่ DOM API นั้นจะทำการอ่านเอกสารทั้งหมดไว้ที่หน่วยความจำก่อนครับ ทำให้เสียเวลาและใช้หน่วยความจำมากโดยไม่จำเป็นเมื่อต้องการอ่านเอกสารเฉพาะบางจุด
แต่ข้อดีของ DOM API คือ สามารถทำงานได้กับเอกสารที่เป็นระดับชั้น (Hierarchy) หรือ Object อย่างเช่นเอกสาร XML และ HTML ครับ

ส่วนตัวผมว่าคุณเอี่ยวถนัด ตัวไหนก็ใช้ตัวนั้นดีกว่าครับ เพราะถ้าแก้ไข หรือภายหลังจะทำได้ง่าย (ผมเองก็ถนัด DOM API)

Quote:
ผมใช้ DOM นะคับ แต่ทำไมผมเอา element ที่มี localName ป่าวหว่า ไม่ได้คับ


localName หมายถึง

<bookstore>
<book category="CHILDREN">
<c:title c:lang="en">Harry Potter</c:title>
<c:author>J K. Rowling</c:author>
<c:year>2005</c:year>
<c:price>29.99</c:price>
</book>
</bookstore>

ใช่หรือป่าวครับ
Date : 2009-11-17 17:32:01 By : extenser
 

 

No. 3



โพสกระทู้ ( 3,468 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter

ขอบคุณ คุณ Extension มากๆครับ ได้ความรู้เพิ่มเติม ผมเอามาไม่ได้ก็ใช้วิชามารเอา

นี่คับ

Code
<?xml version="1.0" encoding="ISO-8859-1" ?>
- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" xmlns:cb="http://centralbanks.org/cb/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:xsi="http://www.w3c.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3c.org/1999/02/22-rdf-syntax-ns#rdf.xsd">
- <channel rdf:about="http://www.bot.or.th/english/statistics/financialmarkets/exchangerate/_layouts/Application/ExchangeRate/ExchangeRate.aspx">
<title>Bank of Thailand: Daily Foreign Exchange Rates</title>
<link>http://www.bot.or.th/english/statistics/financialmarkets/exchangerate/_layouts/Application/ExchangeRate/ExchangeRate.aspx</link>
<description>Daily foreign exchange rates rates from Bank of Thailand.</description>
- <items>
- <rdf:Seq>
<rdf:li rdf:resource="http://www2.bot.or.th/RSS/fxrates/fxrate-USD.xml" />
</rdf:Seq>
</items>
<dc:language>en</dc:language>
<dc:date>2009-11-12</dc:date>
</channel>
- <item rdf:about="http://www2.bot.or.th/RSS/fxrates/fxrate-USD.xml">
<title>TH: 33.4291 THB = 1 USD 2009-11-12 Bank of Thailand daily rate</title>
<link>http://www.bot.or.th/english/statistics/financialmarkets/exchangerate/_layouts/Application/ExchangeRate/ExchangeRate.aspx</link>
<description>33.4291 Thai Baht = 1 USD</description>
<dc:language>en</dc:language>
<dc:date>2009-11-12</dc:date>
<dc:format>text/html</dc:format>
<cb:country>TH</cb:country>
<cb:baseCurrency>THB</cb:baseCurrency>
<cb:targetCurrency>USD</cb:targetCurrency>
<cb:value frequency="business" decimals="4">33.4291</cb:value>
<cb:rateType>Daily</cb:rateType>
<cb:application>statistics</cb:application>
</item>
</rdf:RDF>



ปัจจบันผมเอาใน <description> tag มาแยกเอาค่าเงินบาทคับ

จริงๆ แล้วต้องการ <cb:value frequency="business" decimals="4">33.4291</cb:value> คับ

โค้ด ตัวอย่าง
Code (PHP)
$dom = new DOMDocument('1.0', 'iso-8859-1');
$dom->load('fxrate-usd.xml');

$item_tag = $dom->getElementsByTagName('item');

foreach($item_tag as $item){
	if($new_thb) break;
	$description_tag = $item->getElementsByTagName('description');
	
	foreach($description_tag as $node){
		if($new_thb) break;;
		
		if($node->nodeValue){
			$arr = preg_split('/\s/', $node->nodeValue);
			$new_thb = (float) $arr[0];
		}
	}
}


ซึ่งทำยังไงก็เอา nodeValue ใน cb:value ไม่ได้คับ ทำไม่เป็นจริงๆ ความรู้ XML ก็ไม่มี
Date : 2009-11-17 17:58:23 By : pjgunner
 


 

No. 4

Guest


Test
<?
	$ns_uri = 'http://centralbanks.org/cb/1.0/'; //cb: 
	
	$dom = new DOMDocument('1.0', 'iso-8859-1');
	$dom->load('fxrate-usd.xml');
	
	$item_node = $dom->getElementsByTagName('item');
	foreach($item_node as $item)
	{
		/*  ใช้ฟังก์ชั่น getElementsByTagNameNS() เมื่อ tag นั้นมี NameSpace อยู่ครับ */
		//$value_node = $item->getElementsByTagNameNS('http://centralbanks.org/cb/1.0/','value');
		$value_node = $item->getElementsByTagNameNS($ns_uri,'value');
		foreach($value_node as $value)
		{
			echo $value->nodeValue;
		}
	}
?>


$ns_uri = 'http://centralbanks.org/cb/1.0/'; ตรงนี้ผมอ้างถึง (cb:) ซึ่งเป็น NameSpace ข้างหน้า tag value (namespace ใช้อ้างถึงการเป็นเจ้าของ tag ว่าองค์กรใดเป็นเจ้าของหรืออ้างถึงแหล่งที่มาของ element นั้นๆ )
Date : 2009-11-17 20:34:29 By : extenser
 


 

No. 5



โพสกระทู้ ( 3,468 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter

งงเพิ่มขึ้นอีกนะเนี่ย สรุปว่า ผมจะใช้ของเดิมไปก่อนครับ

ถ้าว่าง อยากศึกษา xml พื้นฐานก่อน สงสัยจะยากยิ่ง(เนมเสปซอะไร ไม่รู้จัก TT)
ถ้าคล่อง คงจะมีความสุขน่าดู ตาลายมาตลอด

ยังไงก็ต้องขอบคุณมากคับ
Date : 2009-11-17 21:53:13 By : pjgunner
 


 

No. 6



โพสกระทู้ ( 381 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

สู้ๆ ครับ
Date : 2009-11-17 22:02:55 By : extenser
 


 

No. 7



โพสกระทู้ ( 3,468 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter

ขอถามเกี่ยวกับเรื่อง xml ต่อหน่อยคับ

คือถ้าเราจะสร้างฟีด rss เราต้องสร้าง xml เองทั้งหมด หรือมีเครื่องมือช่วยสร้างคับ

และถ้ามีเครื่องมือ มันบอกมั้ยคับว่าเว็บไหนดึงข้อมูลไปมั่ง

คืออยากทราบวิธีแปลง ip ให้เป็นโดเมนเนมด้วยน่ะคับ เผื่อเอาไว้บล๊อก บางเว็บที่เป็นคู่แข่ง
Date : 2009-11-17 22:03:28 By : pjgunner
 


 

No. 8



โพสกระทู้ ( 381 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ถ้าสร้าง RSS Feed เองเช่น การนำเสนอข่าว หรือ ประชาสัมพันธ์ข้อมูล ก็คงต้องสร้างฟอร์มเหมือนที่ท่านเอี่ยวเคยถามผมเกี่ยวกับการสร้าง / ลบ / แก้ไข เอกสาร XML แบบนั้นเลยครับ
https://www.thaicreate.com/php/forum/031871.html

หรือถ้าต้องการนำข้อมูลจากฐานข้อมูล เพื่อมาแสดงข่าว หรือ ข้อมูลต่างๆ
https://www.thaicreate.com/php/forum/033628.html

ซึ่งถ้าเราเป็นผู้นำเสนอข้อมูลแต่ไม่มีฐานข้อมูล คงต้องสร้าง XML เองเพื่อที่จะเขียน code ให้อ่าน XML ที่สร้างขึ้นมาแล้วนำเสนอข้อมูลจาก XML ครับ

เครื่องมือเกี่ยวกับ RSS Feed หรือ RSS Feed Editor และ XML Editor นั้นผมเห็นเยอะเหมือนกันนะครับ แต่ไม่เคยลองใช้ซักที

RSS Editor ตัวนี้มีพรีวิว xml ด้วยครับ (แอบไปดู demo มา)
http://www.rss-info.com/en_rsseditor.html
XML Editor
http://www.xmlmind.com/xmleditor

Quote:
คืออยากทราบวิธีแปลง ip ให้เป็นโดเมนเนมด้วยน่ะคับ เผื่อเอาไว้บล๊อก บางเว็บที่เป็นคู่แข่ง

ปกติผมเห็นแต่แปลงจาก โดเมนเนม เป็น ip นะครับ (บล็อค ip ไปเลย หุหุ) เพราะ web server แต่ละเครื่องนั้นคงต้องมี web service หรือ web page หลายๆ domain แน่นอนครับ

จุดประสงค์ของ RSS Feed นั้นทำขึ้นเพื่อเผยแพร่ข้อมูลข่าวสารสู่สาธารณะครับ (Public Document Data) ซึ่งใครจะนำข้อมูลของเรานั้นไปใช้เผยแพร่กันต่อๆ ไปได้โดยเชื่อมโยงมาเว็บไซต์ผู้ที่นำเสนอครับ
Date : 2009-11-17 23:18:25 By : extenser
 


 

No. 9



โพสกระทู้ ( 3,468 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter

โอเคคับ ผมเห็นภาพแล้ว เวลาจะสร้างจริงๆ คงไม่ยากอย่างที่คิด ไม่ได้ใช้ความรู้ xml ที่ไม่เคยรู้จักมาก
Date : 2009-11-17 23:40:11 By : pjgunner
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : เครื่องมือ DOM กับ XML Parser ต่างกันอย่างไร แล้วผมควรใช้อะไรคับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่