পিএইচপি এসকিউএল ওয়ার্ডপ্রেস জাভাস্ক্রিপ্ট জেকুয়েরি এইচটিএমএল
লগইন
×

পিএইচপি টিউটোরিয়াল

হোম-HOME ইনস্টল-Install গঠনপ্রনালী-Syntax চলক-Variable পিএইচপি Echo / Print তথ্যের ধরণ-Data Types কনস্ট্যান্ট-Constant অপারেটর-Operator ফাংশন-Function সুপারগ্লোভাল-Superglobal

কন্ট্রোল স্টেটমেন্ট

if স্টেটমেন্ট if...Else স্টেটমেন্ট Switch স্টেটমেন্ট While লুপ DO...While লুপ For লুপ

পিএইচপি এ্যারে এবং স্ট্রিং

এ্যারে-Array এ্যারে সর্টিং -Array Sorting মাল্টি এ্যারে-Multi Array স্ট্রিং-String

পিএইচপি এডভান্স

তারিখ এবং সময় পিএইচপি include ফাইল হ্যান্ডলিং-File Handling ফাইল খোলা/পড়া ফাইল তৈরি/লিখা ফাইল আপলোড কুকি-Cookie সেশন-Session ফিল্টার-Filter এডভান্স ফিল্টার-Advance Filter এঁরর হ্যান্ডলিং-Error Handling এক্সেপশন হ্যান্ডেলিং-Exception Handling

পিএইচপি ফরম

ফরম হ্যান্ডলিং ফরম ভ্যালিডেশন আবশ্যক ফরম ফিল্ড ফরম URL/E-mail সম্পূর্ণ ফরম

MySQL ডেটাবেজ

MySQL ডেটাবেজ MySQL ডেটাবেজ সংযোগ MySQL ডেটাবেজ তৈরী MySQL টেবিল তৈরী MySQL তথ্য ইনসার্ট MySQL শেষ আইডি পান MySQL একাধিক তথ্য ইনসার্ট MySQL প্রিপেয়ার্ড স্টেটমেন্ট MySQL তথ্য সিলেক্ট MySQL তথ্য ডিলিট MySQL তথ্য আপডেট MySQL সীমিত তথ্য সিলেক্ট

পিএইচপি- এক্সএমএল

PHP XML Parser PHP SimpleXML Parser PHP XML Parser PHP SimpleXML - Get PHP XML Expat PHP XML Dom

পিএইচপি - এজাক্স

পিএইচপি AJAX পরিচিতি AJAX পিএইচপি AJAX ডেটাবেজ AJAX এক্সএমএল AJAX সারাসরি সার্চ AJAX RSS রির্ডার AJAX Poll

পিএইচপি অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং(OOP)

OOP পরিচিতি OOP class তৈরী OOP objects তৈরী OOP $this কিওয়ার্ড OOP মেথড এবং প্রোপার্টি চেইনিং OOP অ্যাক্সেস মোডিফায়ার OOP ম্যাজিক মেথড এবং কন্সটেন্ট OOP ইনহেরিটেন্স OOP Abstract class এবং method OOP ইন্টারফেস OOP পলিমরফিজম OOP টাইপ হিন্টিং() OOP টাইপ হিন্টিনং ইন্টারফেস OOP স্ট্যাটিক মেথোড এবং প্রোপার্টি

পিএইচপি - রেফারেন্স

Array ফাংশন Calendar ফাংশন date/time ফাংশন Directory ফাংশন Error ফাংশন Filesystem ফাংশন Filter ফাংশন FTP ফাংশন HTTP ফাংশন libxml ফাংশন Mail ফাংশন Math ফাংশন Misc. ফাংশন MySQLi ফাংশন SimpleXML ফাংশন String ফাংশন XML Parser ফাংশন Zip File ফাংশন টাইমজোন Timezones
 

PHP XML Expat Parser


XML Expat Parser পিএইচপি কোর ফাইলের অংশ। এটি ব্যবহারের জন্য কোন ইনস্টলের প্রয়োজন নাই। কিছু নিজস্ব(built-in) ফাংশনের মাধ্যমে আমরা XML ডকুমেন্টকে পিএইচপিতে প্রসেস করতে পারি।


XML Expat Parser

XML এক্সপ্যাট পার্সার হলো event-based Parser।

XML ডকুমেন্ট থেকে নেওয়া নিম্নের কোডটুকু লক্ষ্য করুনঃ

<from>Azizur</from>

Event-Based Parser উপরের XML ডকুমেন্টকে তিনটি ইভেন্টের সিরিজে রুপান্তরিত করেঃ


একটি সাধারন XML ফাইল

নিম্নের wish.xml ফাইলটি আমাদের উদাহরণে ব্যবহার করবোঃ

উদাহরণঃ wish.xml ফাইল
<?xml version="1.0" encoding="UTF-8"?>
<wish>
  <to>Tamjid</to>
  <from>Azizur</from>
  <subject>Wish</subject>
  <message>Best wishes for you.</message>
</wish>

XML এক্সপ্যাট পার্সার ইনিশিয়ালাইজ করা

আমরা XML এক্সপ্যাট পার্সারকে পিএইচপিতে ইনিশিয়ালাইজ(initialize ) করতে চাই। তাই আমরা এক্সএমএল এর বিভিন্ন ইভেন্ট এর জন্য কিছু নিয়ন্ত্রক(handler) ডিফান্ড করবো। তারপর XML ফাইলটি পার্স(parse) করবো।

উদাহরণ
<?php
// XML পার্সার(parser) সক্রিয় হবে।
$parser=xml_parser_create();

// এলিমেন্টের শুরুতে ব্যবহৃত ফাংশন
function start($parser,$element,$element_attribute) {
  switch($element) {
    case "WISH":
        echo "-- Wish --<br>";
        break;
    case "TO":
        echo "To: ";
        break;
    case "FROM":
        echo "From: ";
        break;
    case "SUBJECT":
        echo "Subject: ";
        break;
    case "MESSAGE":
        echo "Message: ";
  }
}

// একটি এলিমেন্টের শেষে ব্যবহৃত ফাংশন
function stop($parser,$element) {
  echo "<br>";
}

// ক্যারেক্টার ডাটা খোঁজার সময় ব্যবহৃত ফাংশন
function char($parser,$data) {
  echo $data;
}

// এলিমেন্টের হ্যান্ডেলার নির্ধারণ 
xml_set_element_handler($parser,"start","stop");

// ডাটা হ্যান্ডেলার নির্ধারণ
xml_set_character_data_handler($parser,"char");

// XML ফাইল ওপেন হবে
$fp=fopen("wish.xml","r");

// ডাটা পড়বে
while ($data=fread($fp,4096)) {
  xml_parse($parser,$data,feof($fp)) or
  die (sprintf("Error: %s at line %d",
  xml_error_string(xml_get_error_code($parser)),
  xml_get_current_line_number($parser)));
}

// XML পার্সার মুক্ত হবে
xml_parser_free($parser); ?>

ফলাফল
-- Wish --
To: Tamjid
From: Azizur
Subject: Wish
Message: Best wishes for you.

উদাহরণের ব্যাখ্যাঃ

  1. xml_parser_create() ফাংশনের মাধ্যমে XML পার্সার শুরু হবে।
  2. বিভিন্ন ইভেন্ট হ্যান্ডেলার এর সাথে ব্যবহার এর জন্য ফাংশন তৈরি করতে হবে।
  3. পার্সার যখন শুরু এবং শেষ ট্যাগ এর সাক্ষাৎ পায় তখন কোন ফাংশনটি সম্পাদিত হবে তা নির্ধারন করার জন্য xml_set_element_handler() ফাংশনটি সংযোজন করা হয়েছে।
  4. পার্সার যখন ক্যারেক্টার ডেটার সাক্ষাৎ পায় তখন কোন ফাংশনটি সম্পাদিত হবে তা নির্ধারন করার জন্য xml_set_character_data_handler() ফাংশনটি সংযোজন করা হয়েছে।
  5. xml_parse() ফাংশন এর মাধ্যমে "wish.xml" ফাইলটি পার্স করা হয়েছে।
  6. কোনো ত্রুটি থাকলে xml_error_string() ফাংশনটি XML ত্রুটি(error) গুলোকে আক্ষরিক বর্ণনায় রূপান্তর করবে।
  7. xml_parser_create() ফাংশন দ্বারা দখলকৃত মেমোরি খালি করতে xml_parser_free() ফাংশনটি ব্যবহার করা হয়েছে।