Các câu hỏi phỏng vấn PHP là một trong những từ khóa được tìm kiếm nhiều nhất trên google về chủ đề Các câu hỏi phỏng vấn PHP. Trong bài viết này, coder.com.vn sẽ viết bài Các câu hỏi phỏng vấn PHP thường gặp với dân lập trình mới nhất 2020
Câu 1: PHP có mấy bí quyết khai báo? các cách nào được xem là chủ đạo thống , không ảnh hưởng khi các phiên bản update sau này?
PHP có 4 bí quyết khai báo, tuy nhiên chỉ có 2 bí quyết được coi như hợp lệ và thống nhất trên toàn thế giới:
Câu 2. Hằng tại PHP khác gì so sánh với biến? nếu như 1 hằng được khái niệm 2. lần, thì liệu có bị lỗi không?
Hằng và biến trong PHP là khái niệm khác nhau:
- đầu tiên không giống nhau là cách khai báo:
- Biến thì chỉ cần sử dụng ký tự $ để gắn hoặc lấy giá trị.
- Hằng sử dụng hàm define() gắn giá trị và dùng constant() để lấy giá trị.
- Điểm khác nhau lớn đặc biệt là hằng là chẳng thể thay đổi tại suốt quá trình chạy chương trình, biến thì có.
Nêu 1 hằng được khái niệm 2 lần thì chương trình vẫn chạy được bình thường hay tuy vậy hằng chỉ có giá trị của lần định nghĩa trước tiên.
Câu 3. Phân biệt $_POST , $_GET trong php?
Cả $_GET , $_POST đều được dùng để gửi dữ liệu lên server.
- $_GET: gởi dữ liệu lên server thông qua URL, nên thông tin dữ liệu hiển thị lên url thế nên bảo mật tầm thường, dữ liệu gởi lên bị giới hạn 1024 ký tự.
- $_POST: gởi dữ liệu lên server dưới dạng ẩn thông qua HTTP Header vì thế nó có tính bảo mật cao hơn so với GET, dữ liệu gửi lên không bị giới hạn.
- Tuy nhiên vận tốc thực thi xử lý của Post chậm hơn Get.
Câu 4 Mảng là gì? Có mấy loại mảng tại PHP?
Mảng là một biến có thể chứa được đa số tử, từ đấy ta có thể dễ dàng lưu giữ, xắp xếp, hay xóa bỏ các phần tử tại mảng một bí quyết giản đơn.
Mảng gồm có 2. thành phần là KEY và VALUE, key sử dụng để truy xuất vào phần tử của mảng qua đó ta có khả năng gán giá trị hoặc lấy giá trị của các phần tử trong mảng.
Mảng(array) có 3. loại chủ đạo là:
- Mảng tuần tự: là mảng có key tự động tạo là chữ số tăng dần cuất phát từ 0.
- Mảng không tuần tự: là mảng có key mà bạn phải tự khái niệm bằng các ký tự chữ hoặc số, và key không được sắp xếp bất kỳ thứ tự nào.
- Mảng đa chiều: là mảng có chứa tối thiểu một mảng khác trong nó.
Câu 5 Mảng tuần tự là gì? Khác gì với bất tuần tự? Để duyệt mảng ta sử dụng vòng lặp nào?
Mảng tuần tự là mảng có key là chữ số bắt đầu từ 0 , tăng dần. Nó khác với mảng bất tuần tự là những phần tử tại nó KEY được sắp xếp tăng dần từ 0 còn mảng bất từ tự thì không.
Để duyệt mảng tả có thể sử dụng bất kỳ vùng lập nào? tuy nhiên chuẩn đặc biệt là dùng vòng lập foreach, vì vòng lập này được nhà tăng trưởng PHP tạo riêng cho việc duyệt mảng, nêu nó dễ sử dụng hơn, vận tốc giải quyết của nó nhanh hơn.
Câu 6 Để 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ì?
tại PHP cung cấp hàm implode(separator,array) dùng để chuyển mảng thành một chuỗi và hàm explode(separator,string,[limit]) sử dụng để chuyển một chuỗi thành mảng. bên cạnh đó ta có hàm join($ky_tu,$array) giống hàm implode
Câu 7. Tại PHP để gộp mảng ta sử dụng hàm gì? Để tách mảng ta dùng hàm gì?
Trong PHP cung cấp hàm array_merge($array1, $array2, $array3,…) sử dụng để nối các mảng thành một mảng độc nhất , hàm array_slice(array,start,[length],[preserve]) dùng để tách mảng thành một mảng bé dại hơn.
Câu 8 Cho biết sự không giống nhau giữa serialize , json_encode? Lý giải theo cách bạn hiểu? (Đọc thêm Hàm json_encode và json_decode tại PHP)
json_encode: là phương thức sử dụng để chuyển đổi một mảng(Array) hoặc Object thành string(chuỗi) dữ liệu JSON để dùng khi lưu giữ trong database, và để chuyển đổi trái lại ta dùng json_decode để chuyển đổi một chuỗi dữ liệu JSON sang dạng mảng(Array) hoặc object để sử dụng tại code PHP.
serialize(array): là cách thức dùng để chuyển một mảng(Array) hoặc Object thành string(chuỗi) dữ liệu theo chuẩn của PHP để ta có thể lưu giữ hoặc truyền tải, khi mong muốn chuyển nó lại thành lại một mảng hoặc phương thức ta dùng phương thức unserialize().
Câu 9. Cookie , session có gì khác nhau? Người ta nói bản thân của session là cookie là đúng hay sai? (Đọc thêm Session là gì? hiểu sâu Session và Cookie )
COOKIE là một tập tin nhỏ dại được server nhúng vào máy tính của người dùng. nếu như lần đầu tiên trình duyệt truy xuất vào website nó sẽ gởi một COOKIE đến trình duyệt của người sử dụng, , mỗi khi người dùng tiếp tục đòi hỏi một trang web từ website này thì COOKIE với những nội dung thu nhập từ phía người dùng trên website này sẽ được sẽ gởi trả về server của website.
SESSION được hiểu là khoảng thời gian mà người tiêu dùng giao tiếp với 1 ứng dụng. SESSION được lưu trữ hoàn toàn trên server, do vậy tính bảo mật cao hơn cookie, những website hiện này thường dùng session để lưu thông tin của người dùng khi họ đăng nhập. Chu kỳ sống của SESSION do webserver qui định, ta có khả năng thay đổi chu kỳ này khi cấu hình webserver, tại server sẽ có 1 PHPSESSID tương ứng được tạo ra, các PHPSESSID sẽ được lưu tại một tập tin văn bản ở trong vị trí được qui định tại file php.ini ở dòng session.save_path.
Người ta nói bản thân của session là cookie, về cơ bản SESSION , COOKIE đều là các tập tin lưu trữ lại thông tin của người dùng website, tuy nhiên dựa trên khái miệm, cách dùng, ứng dụng của chúng là khác nhau thế nên tôi cho rằng chúng là khác biệt.
Câu 10: Theo bạn, sự khác nhau của toán tử & , && tại PHP là gì?
Toán từ & và && tại PHP đều là phép toán AND, tuy nhiên toán tử một dấu & ứng dụng theo kiểu bit, nói dễ hiểu hơn một dấu & là phép AND thao tác trên những bit chẳng hạn như 1 & 0 thì ra 0. Phép toán hai dấu & thì chỉ áp dụng cho kiểu boolean True , False.
Câu 11: Hãy cho biết $a++ , ++$a không giống nhau ở đâu?
Cả hai đều được dùng để tăng thêm một đơn vị cho biết số, tuy vậy điểm không giống nhau ở $a++ được thực Khi mà đã nó được gọi, còn ++$a được thực thi ngay khi nó được gọi, thu thập ví a bằng 5. khi dung hàm echo để in nó ra với giá trị a++ thì nó sẽ ra là 5. còn khi sử dụng echo cho ++a thì giá trị của được in ra sẽ là 6
Câu 12: Tính nhanh kết quả của đoạn code sau
1 2. 3. 4. 5. 6. | $a=5.; echo $a++ + $a– + –$a + ++$a + $a++ + ++$a – $a– + $a; ?> |
→ Lỗi không in ra được gì.
Câu 13: Mysql_close() cần thiết như thế nào trong thực tế ?. vì sao ít thấy người sử dụng áp dụng nó?
Mysql_close() được dùng để đóng kết nối đến cơ sở dữ liệu đã mở trước đây. điều này cực kì không thể thiếu vì nó giúp giảm tải giải quyết của database, hiểu đơn giản thế này một người truy cập tới website của bạn và website của bạn có liên kết chặt chẽ database , điều đó giống với việc sẽ có tối thiểu một kết nối database được tạo, vậy 100 người sẽ có 100 liên kết chặt chẽ, , giả dùng trong số đó có 9 người không sử dụng nữa nhưng liên kết chặt chẽ vẫn còn hiệu lực thì việc làm này nghĩa là thay vì database phải giải quyết chỉ có 1 liên kết chặt chẽ mà nó phải xử lý 100 liên kết chặt chẽ.
vì sao ít người dùng trước tiên vì hiệu quả mang lại của hàm này cực kì khó thấy tại các hoàn cảnh thông thường, Trên thực tế khi người dùng không để lại dùng nữa thì sau một khoảng thời gian nhanh chóng liên kết chặt chẽ này sẽ tự động đóng, thứ hai vì ít người có khả năng Nhìn thấy được lỗi lo nếu như không hề có dịp tiếp cận hoặc làm việc với lượng dữ liệu lớn thì sẽ thấy việc mở hoặc đóng một conneciton đúng lúc , chính xác sẽ để dành được cực kì nhiều khoáng sản cho hệ thống cũng giống như vận tốc giải quyết của hệ thống, vì thế hàm này cực kì cần thiết khi mà bạn quản lý tài nguyên , vận tốc thực thi của hệ thống hay của site.
Câu 14: muốn chuẩn hóa dữ liệu về utf-8 tại PHP ta phải làm gì?.
dùng encoding utf-8 tại meta charset tại tập tin PHP.
sử dụng encoding utf-8-unicode-ci trong MySQL.
Có thể bạn quan tâm: Các tính chất của OOP [Lập trình hướng đối tượng] mới nhất 2020
Nguồn: https://techtalk.vn/