- Chuyên mục khác :
- PHP cơ bản và nâng cao
- ·
- Bài tập PHP
- ·
- Javascript cơ bản và nâng cao
- ·
- HTTP cơ bản và nâng cao
- Cơ bản về PHP
- Học PHP cơ bản và nâng cao,tự học lập trình PHP cơ bản hay nhất
- PHP là gì? 297 bài học lập trình PHP hay nhất
- Cài đặt PHP trên Windows, Linux và Mac OS X
- Cú pháp PHP
- Biến trong PHP
- Hằng số trong PHP
- Toán tử trong PHP
- Lệnh if, else, switch trong PHP
- Vòng lặp trong PHP
- Chuỗi (String) trong PHP
- Khái niệm Web tạo nội dung động trong PHP
- Phương thức GET & POST trong PHP
- Include và Require trong PHP
- File & I/O trong PHP
- Hàm trong PHP
- Cookie trong PHP
- Session trong PHP
- Gửi Email sử dụng PHP
- Upload File trong PHP
- Chuẩn viết code trong PHP
- Hoạt động PHP nâng cao
- Biến được định nghĩa trước trong PHP
- Regular Expression trong PHP
- Xử lý ngoại lệ và lỗi (Error & Exception Handling)
- Bug và Debug trong PHP
- Date & Time trong PHP
- PHP & MySQL
- PHP & AJAX
- PHP & XML
- Lập trình hướng đối tượng trong PHP
- PHP cho Lập trình viên C
- PHP cho Lập trình viên PERL
- Ví dụ về Form trong PHP
- Giới thiệu Form trong PHP
- Ví dụ về Validation trong PHP
- Ví dụ Complete Form trong PHP
- Ví dụ về đằng nhập trong PHP
- Ví dụ về đăng nhập trong PHP
- Đăng nhập Facebook bằng PHP
- Tích hợp PayPal trong PHP
- Đăng nhập MySQL sử dụng PHP
- Ví dụ về AJAX trong PHP
- AJAX Search trong PHP
- AJAX XML Parser trong PHP
- AutoComplete Search với AJAX và PHP
- Ví dụ về AJAX RSS Feed trong PHP
- Ví dụ về XML trong PHP
- Giới thiệu XML
- Simple XML trong PHP
- Simple XML GET trong PHP
- Ví dụ SAX Parser trong PHP
- Ví dụ DOM Parser trong PHP
- PHP Frame Work
- Một số PHP Frame Works
- Core PHP vs Frame Works PHP
- Design Pattern trong PHP
- Design Pattern trong PHP
- Tổng hợp hàm trong PHP
- Tổng hợp hàm trong PHP
SAX Parser được sử dụng để phân tích cú pháp XML file và tốt hơn để quản lý bộ nhớ so với Simple XML Parser và DOM. Nó không giữ bất kỳ Data trong bộ nhớ, vì thế nó có thể được sử dụng với số lượng file lớn. Ví dụ sau minh họa cách lấy data từ XML bởi sử dụng SAX API.
SAX.xml
XML nên là như sau:
<?xml version="1.0" encoding="utf-8"?> <tutors> <course> <name>Android</name> <country>VietNam</country> <email>s2sontechteam@gmail.com</email> <phone>123456789</phone> </course> <course> <name>Java</name> <country>VietNam</country> <email>s2sontechteam@gmail.com</email> <phone>123456789</phone> </course> <course> <name>HTML</name> <country>VietNam</country> <email>s2sontechteam@gmail.com</email> <phone>123456789</phone> </course> </tutors>
SAX.php
Php file nên là như sau:
<?php //đọc XML bởi sử dụng SAX (viết tắt của Simple API for XML) parser $tutors = array(); $elements = null; // gọi hàm này khi thẻ (tag) được mở function startElements($parser, $name, $attrs) { global $tutors, $elements; if(!empty($name)) { if ($name == 'COURSE') { // tạo một mảng để lưu giữ thông tin $tutors []= array(); } $elements = $name; } } // gọi hàm này khi thẻ (tag) được đóng function endElements($parser, $name) { global $elements; if(!empty($name)) { $elements = null; } } // gọi trên phần text giữa thẻ đóng và thẻ mở function characterData($parser, $data) { global $tutors, $elements; if(!empty($data)) { if ($elements == 'NAME' || $elements == 'COUNTRY' || $elements == 'EMAIL' || $elements == 'PHONE') { $tutors[count($tutors)-1][$elements] = trim($data); } } } // Tạo một XML parser mới và trả về một resource handle // tham chiếu tới để được sử dụng bởi các hàm XML khác. $parser = xml_parser_create(); xml_set_element_handler($parser, "startElements", "endElements"); xml_set_character_data_handler($parser, "characterData"); // mở xml file if (!($handle = fopen('sax.xml', "r"))) { die("Không thể mở XML input"); } while($data = fread($handle, 4096)) // đọc xml file { xml_parse($parser, $data); // bắt đầu parse tài liệu XML } xml_parser_free($parser); // Xóa parser $i=1; foreach($tutors as $course) { echo "ID - ".$i.'<br/>'; echo "Tên khóa học - ".$course['NAME'].'<br/>'; echo "Quốc gia - ".$course['COUNTRY'].'<br/>'; echo "Email - ".$course['EMAIL'].'<br/>'; echo "Phone - ".$course['PHONE'].'<hr/>'; $i++; } ?>
Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php sẽ cho kết quả:
Các bài học PHP phổ biến khác tại s2sontech:
Bình luận (0)