พูดง่ายๆ ก็คือ
1. มีความแตกต่างในรูปแบบ: asp คือ vb และ php เป็นภาษาที่เหมือน c
2. แพลตฟอร์มแตกต่างกัน: asp พร้อมใช้งานบน windows และ php พร้อมใช้งานในทุกระบบ
3. ราคามีความแตกต่าง: php ฟรี
4. ความปลอดภัย: PHP สูงกว่า
ภาษา PHP คืออะไร
PHP ย่อมาจาก Hypertext Processor ซึ่งหมายความว่าคุณต้องรู้ว่าเป็นภาษาประมวลผลฝั่งเซิร์ฟเวอร์และมาในรูปแบบของ HTML ตำแหน่งที่ใช้บ่อยที่สุดคือบนเว็บเพจ โดยที่ข้อมูลจากไคลเอนต์ไปยังเว็บเซิร์ฟเวอร์ ที่ซึ่งข้อมูลถูกประมวลผลและส่งคืนผลลัพธ์
แต่ภาษาที่หลากหลายนี้ไม่ได้จำกัดอยู่เพียงหน้าเว็บเท่านั้น PHP ยังสามารถนำมาใช้ในเชลล์บรรทัดคำสั่งได้อีกด้วย ซึ่งสามารถใช้เป็นส่วนขยายของระบบปฏิบัติการเพื่อรันไฟล์ PHP ที่เกี่ยวข้องได้
แอปพลิเคชันฐานข้อมูลยังเป็นจุดแข็งของ PHP MySQL, SQL, Microsoft Access, Oracle และ InterBase เป็นเพียงฐานข้อมูลบางส่วนที่ใช้ภาษา PHP
ภาษา ASP คืออะไร
ASP เป็นตัวย่อของ Active Server Pages และยังเป็นภาษาสคริปต์ฝั่งเซิร์ฟเวอร์อีกด้วย เพื่อให้บรรลุผลจากหน้าเว็บแบบไดนามิก Microsoft ได้รวมภาษาดังกล่าวเข้ากับกระบวนการของผู้ให้บริการ ซึ่งเป็น COM (Component Object Models) ที่รู้จักกันดี ).
แม้ว่า ASP ไม่ได้จำกัดอยู่เพียงการทำงานบนเซิร์ฟเวอร์ IIS (Internet Information Services) แต่ฟังก์ชันเต็มรูปแบบสามารถใช้งานได้บน IIS เท่านั้น ระบบปฏิบัติการที่รองรับในตอนแรกคือ Windows 2000 และ NT4 Option Pack ในทำนองเดียวกัน ASP ยังสามารถทำงานบนแพลตฟอร์มอื่นที่ไม่ใช่ IIS PWS (เว็บเซิร์ฟเวอร์ส่วนบุคคล) สามารถตีความโค้ด ASP บน Windows NT, 95 และ 98 ได้ แต่ฟังก์ชันจะถูกจำกัด
ปัญหาต้นทุน
หลายๆ คนอาจต้องการโต้แย้งเกี่ยวกับต้นทุนของ ASP กับ PHP แต่นี่ไม่ใช่จุดสนใจหลักจริงๆ ผู้ใช้ส่วนใหญ่ซื้อ IIS เพื่อการบูรณาการที่ดียิ่งขึ้นกับผลิตภัณฑ์ของ Microsoft ต้องบอกว่า IIS คุ้มค่ากับเงินที่เสียไปอย่างแน่นอน
PHP และ Apache Web Server ใช้งานได้ฟรี ซึ่งให้บริการโดย Apache Software Foundation - ปลอดภัยและฟรี ด้วยเหตุนี้ PHP จึงสามารถติดตั้งได้ฟรี ต้นทุนเดียวคือการซื้อเซิร์ฟเวอร์ที่ใช้งานและค่าเวลา การติดตั้ง.
ปัญหาความเร็ว
ปัญหานี้ยังเป็นประเด็นถกเถียงที่ร้อนแรงที่สุดระหว่างทั้งสองฝ่ายเกี่ยวกับภาษาสคริปต์ฝั่งเซิร์ฟเวอร์ เนื่องจากทั้งสองภาษานี้เข้ามาสู่โลกนี้ การถกเถียงในประเด็นนี้จึงไม่ได้หยุดลง
โดยทั่วไปแล้ว หลังจากที่แอปพลิเคชันใช้หน่วยความจำเสร็จแล้ว ก็ควรส่งคืนไปยังระบบปฏิบัติการ ตราบใดที่หน่วยความจำถูกใช้โดยโปรแกรม ระบบปฏิบัติการมักจะไม่ขอหน่วยความจำกลับ วิธีที่เป็นเอกลักษณ์ของ PHP ใช้หน่วยความจำทำให้จุดแข็งประการหนึ่งนี้ หลังจากที่ PHP ได้รับชิ้นส่วนของหน่วยความจำ มันจะเก็บไว้ชั่วคราว เมื่อหน่วยความจำถูกใช้จนหมด มันจะไม่ถูกส่งกลับไปยังระบบปฏิบัติการ แต่จะถูกสงวนไว้สำหรับการดำเนินการต่อไปที่เป็นไปได้ ซึ่งสามารถแก้ไขได้ในไฟล์กำหนดค่า
เนื่องจากเป็นไปตามสถาปัตยกรรม COM ASP จึงช้ากว่าเล็กน้อยเนื่องจากเรียกโมเดลอ็อบเจ็กต์และระบบต้องโหลดโมเดลเหล่านี้ซึ่งคล้ายกับภาษาโปรแกรมที่ใช้ส่วนควบคุมเล็กน้อย ในแง่ของการใช้หน่วยความจำก็คล้ายกับแอปพลิเคชันมาตรฐานเช่นกัน
ความเร็วที่แตกต่างกันมากที่สุดคือคอมพิวเตอร์ที่ IIS หรือ Apache Web Server ทำงานอยู่ หากคอมพิวเตอร์ต่างกัน ภาษาในคอมพิวเตอร์ที่กำหนดค่าไว้ดีกว่าจะทำงานเร็วขึ้น
คิดถึงความเข้ากันได้
เมื่อพูดถึงปัญหาความเข้ากันได้ มีหลายอย่าง เนื่องจากไม่มีคอมพิวเตอร์สองเครื่องในโลกที่มีฮาร์ดแวร์และซอฟต์แวร์ที่เหมือนกันทุกประการ และด้วยเหตุนี้ ผู้คนจึงต้องการทราบว่าโปรแกรมจะทำงานอย่างไรบนอุปกรณ์ที่ตนมีอยู่แล้ว
จากมุมมองนี้ PHP อาจเป็นผู้นำ ในแง่ของโค้ดโอเพ่นซอร์ส (OpenSource) ซึ่งหมายความว่าอาจมีนักพัฒนาจำนวนนับไม่ถ้วน ทรัพยากรที่ดีกว่า ไลบรารีเอกสารที่ใหญ่กว่า ฯลฯ รออยู่ เนื่องจากปัจจัยเหล่านี้ ยิ่งมีการพัฒนา PHP มากเท่าไร โปรแกรมเมอร์ก็ยิ่งเรียนรู้มากขึ้นเท่านั้น
โดยทั่วไปเชื่อกันว่า ASP ทำงานบน IIS เท่านั้น ดังที่กล่าวไว้ข้างต้น สิ่งนี้ยังไม่ถูกต้องนัก ApacheASP สามารถเรียกใช้ฟังก์ชัน ASP แบบจำกัดบนเซิร์ฟเวอร์ Apache ใดก็ได้ สิ่งที่คุณต้องทำคือเปิด mod_perl
สิ่งที่คุณต้องจำไว้คือ PHP สามารถทำงานบนแพลตฟอร์มใดก็ได้ MacOSX, Windows, Linux และ Solaris เป็นระบบปฏิบัติการทั้งหมดที่สามารถรันได้
ข้อควรพิจารณาด้านความปลอดภัย
ไม่ว่าการรักษาความปลอดภัยจะสูงแค่ไหน ทุกอย่างก็สามารถถูกบุกรุกได้ สิ่งเดียวที่ขาดไปคือเวลาและทรัพยากร
ตัวเลือกความปลอดภัยของ Apache ทำให้มีความปลอดภัยมากกว่าระบบปฏิบัติการ Windows Server IIS มีช่องโหว่ด้านความปลอดภัยมากมายและได้รับการแก้ไขแล้ว เมื่อเปรียบเทียบกัน ความปลอดภัยของ Apache ก็ชัดเจนสำหรับทุกคน
การเรียนรู้การเขียนโปรแกรม
ASP มาจาก Visual Basic ซึ่งเป็นภาษาที่ใช้กันทั่วไปในผลิตภัณฑ์ของ Microsoft ดังนั้นจึงง่ายและเรียนรู้ได้ง่าย ในขณะที่ PHP นั้นใช้ภาษา C++ มากกว่า ซึ่งอาจเป็นส่วนหนึ่งของสาเหตุที่ทำให้มันรวดเร็ว
ความเข้าใจผิดทั่วไปเกี่ยวกับ ASP
ASP และ ASP.NET ไม่ใช่สิ่งเดียวกันเลย ASP.NET จึงเป็นการเขียนโปรแกรม ASP ใหม่ทั้งหมด ด้วยเหตุนี้ ฟังก์ชันส่วนใหญ่จึงเข้ากันไม่ได้กับสถาปัตยกรรม .NET ที่อัปเดตแล้ว
สรุปแล้ว
จากมุมมองส่วนตัว PHP นั้นเร็วกว่า ปลอดภัยกว่า ใช้งานง่ายกว่า เข้ากันได้มากกว่า และถูกกว่าด้วยซ้ำ แต่นั่นไม่ได้หมายความว่า ASP นั้นไร้ประโยชน์ ไม่จำเป็นต้องอภิปรายเกี่ยวกับทั้งสองเรื่องนี้เพิ่มเติม เพียงใช้ภาษาที่เข้ากันได้กับระบบของคุณมากที่สุดและตรงกับความคาดหวังของคุณมากที่สุด