PHP5 theo tôi biết nó hỗ trợ 6 bộ thư việc mở rộng SAX, DOM, SimpleXML, XMLReader, XMLWriter, và bộ xử lý XSLT để thao tác XML. Tất cả các phần mở rộng này hiện nay đều dựa trên libxml2.
DOM: là chữ viết tắt của từ Document Object Model ("Mô hình đối tượng tài liệu") là một giao diện lập trình ứng dụng (API) phục vụ phân tích dữ liệu có cấu trúc ví dụ như là HTML và XML, DOM phân tích dữ liệu theo cơ chế dạng cây(tree).
SAX: là tên viết tắt của Simple API for XML, nó là một API dùng để phân tích cú pháp và dữ liệu của XML, SAX phân tích dữ liệu theo cơ chế dòng dữ liệu đơn hướng nghĩa là dữ liệu đã đọc qua rồi thì sẽ không được đọc lại trừ khi thực hiện phân tích lại từ đầu.
SimpleXML: là một phần mở rộng của PHP trong tiếng anh gọi PHP Extension cho phép chúng ta dễ dàng thao tác dữ liệu XML.
XSLT: Được dùng để chuyển đổi XML thành HTML.
Đây là 4 phương pháp được phổ biến nhất thế giới, còn hai phương pháp còn lại thì như tên của chúng dùng để đọc và viết XML.
Bạn có thể xem thêm các câu hỏi phong vấn PHP khác tại bài viết Tổng hợp các câu hỏi có thể gặp khi đi phỏng vấn vị trí lập trình viên PHP (kèm theo phần trả lời). Nếu các bạn có thêm bất kỳ câu hỏi khác đã gặp trong quá trình phỏng vấn PHP thì chia sẻ với mình nhé, còn nếu câu trả lời của mình không hay thì cũng giúp mình biên soạn bổ sung và comment giúp dưới đây nhé để mình update thêm.
DOM: là chữ viết tắt của từ Document Object Model ("Mô hình đối tượng tài liệu") là một giao diện lập trình ứng dụng (API) phục vụ phân tích dữ liệu có cấu trúc ví dụ như là HTML và XML, DOM phân tích dữ liệu theo cơ chế dạng cây(tree).
SAX: là tên viết tắt của Simple API for XML, nó là một API dùng để phân tích cú pháp và dữ liệu của XML, SAX phân tích dữ liệu theo cơ chế dòng dữ liệu đơn hướng nghĩa là dữ liệu đã đọc qua rồi thì sẽ không được đọc lại trừ khi thực hiện phân tích lại từ đầu.
SimpleXML: là một phần mở rộng của PHP trong tiếng anh gọi PHP Extension cho phép chúng ta dễ dàng thao tác dữ liệu XML.
XSLT: Được dùng để chuyển đổi XML thành HTML.
Đây là 4 phương pháp được phổ biến nhất thế giới, còn hai phương pháp còn lại thì như tên của chúng dùng để đọc và viết XML.
Bạn có thể xem thêm các câu hỏi phong vấn PHP khác tại bài viết Tổng hợp các câu hỏi có thể gặp khi đi phỏng vấn vị trí lập trình viên PHP (kèm theo phần trả lời). Nếu các bạn có thêm bất kỳ câu hỏi khác đã gặp trong quá trình phỏng vấn PHP thì chia sẻ với mình nhé, còn nếu câu trả lời của mình không hay thì cũng giúp mình biên soạn bổ sung và comment giúp dưới đây nhé để mình update thêm.
- PHP là gì?
- PHP có mấy cách khai báo? Những cách nào được xem là chính thống và không ảnh hưởng khi các phiên bản update sau này?
- Hằng trong PHP khác gì so với biến? Nếu 1 hằng được định nghĩa 2 lần, thì liệu có bị lỗi không?
- PHP Có bao nhiêu biến môi trường? Biến $_REQUEST có thể nhận được giá trị từ FORM không?
- Phân biệt $_POST và $_GET trong php.
- Mảng là gì? Có mấy loại mảng trong PHP?
- Mảng tuần tự là gì?. Khác gì với bất tuần tự?. Để duyệt mảng ta dùng vòng lặp nào?.
- Để chuyển mảng thành chuỗi ta dùng hàm gì? Để tách chuỗi thành mảng ta dùng hàm gì?
- Trong PHP để gộp mảng ta dùng hàm gì? Để tách mảng ta dùng hàm gì?
- Cho biết sự khác nhau giữa serialize và json_encode? Lý giải theo cách bạn hiểu.
- Cookie và session có gì khác nhau? Người ta nói bản thân của session là cookie là đúng hay sai?
- Theo bạn, sự khác nhau của toán tử & và && trong PHP là gì?. [câu trả lời ngắn khi phỏng vấn lập trình php]
- Hãy cho biết $a++ và ++$a khác nhau ở đâu? [câu trả lời ngắn khi phỏng vấn lập trình php]
- Tính nhanh kết quả của đoạn code sau trong 2 phút. [câu trả lời ngắn khi phỏng vấn lập trình php]
- Mysql_close() cần thiết như thế nào trong thực tế ?. Vì sao ít thấy người dùng áp dụng nó? [câu trả lời ngắn khi phỏng vấn lập trình php]
- Muốn chuẩn hóa dữ liệu về utf-8 trong PHP ta phải làm gì?. [câu trả lời ngắn khi phỏng vấn lập trình php]
- Trong PHP làm sao lấy được id vừa tiến hành thêm vào CSDL ngay?.
- Để đếm số dòng, ta nên dùng mysql_num_rows() trên câu truy vấn “select * from….” hay count trực tiếp trong câu truy vấn?.
- Việc enter có giá trị hay không trong textarea bình thường (không nhúng khung soạn thảo)? Và làm thế nào để có thể hiển thị ra bên ngoài thao tác xuống dòng như bình thường.
- fgets() và fgetc() khác nhau như thế nào?.
- fgets() và fread() khác nhau ra sao?.
- feof là gì, nó có ý nghĩa như thế nào?.
- file_get_contents() khác gì so với fread()?.
- Từ khóa Final có chức năng gì trong OOP.? Vì sao phải dùng nó?
- Sự khác nhau giữa __construct() và __ destruct() là gì ?. Nêu ví dụ về sự khác nhau đó.
- Có bao nhiêu toán tử trong PHP?.
- Bạn hiểu thế nào abstract và thế nào là interface?. Vì sao Interface có nhiều thế mạnh hơn so với abstract?. Chức năng chính của chúng là gì?.
- Nêu sự khác nhau của biểu thức if...else và switch?. Nêu những trường hợp nào thì dùng switch, những trường hợp nào thì dùng if...else.
- Phương pháp tấn công Local Attack là gì?
- Làm thế nào để ngăn chặn Local Attack?
- Sql Injection là gì?
- Cách phòng chống Sql Injection?
- XSS Attack là gì?
- Cách phòng chống XSS?
- HTML và XHTML khác nhau như thế nào?.
- XML là gì?
- XML là cú pháp ra sao ?.
- XML Namespace là gì?
- Để làm việc với XML trong PHP 5 có bao nhiêu phương pháp ?. Nêu diễn giải từng phương pháp.
- Nêu những ưu điểm của simpleXML?.
- Dùng xpath trong simpleXML lấy thông tin như thế nào?.
- Design pattern trong lập trình hướng đối tượng OOP là gì?
- Trong lập trình hướng đối tượng có bao nhiêu design pattern?
- Bạn hiểu thế nào về kiến trúc MVC?.
- Bạn hiểu gì về XSLT, Xlink, Xpoint, Xpath?.
- Cơ chế tạo template trong XSL như thế nào?.
No comments:
Post a Comment