| Campus Community | CoE Project | Campus Let's Work | Campus Forums | Campus Mailing List | Campus Wiki | Campus Webservices |
Secure Login/Register

PHP

การใช้ PHP เรียกเว็บเซอร์วิสแบบ REST

รูปภาพของ kanda

ภาษา PHP เป็นภาษาที่เหมาะสมในการพัฒนาเว็บแอปพลิเคชัน เนื่องจากเป็นภาษาที่ง่าย
เรียนรู้ได้เร็ว และสามารถนำมาใช้ได้ฟรี เว็บเซอร์วิสแบบ REST
นั้นเป็นเว็บเซอร์วิสที่สามารถพัฒนาขึ้นมาได้ง่ายโดยอาศัยเพียงความรู้เกี่ย
วกับ XML และ HTTP การเรียกใช้เว็บเซอร์วิส REST ด้วยภาษา PHP
นั้นง่ายและเป็นที่นิยม

ขั้นตอนวิธีการมีดังต่อไปนี้

1) เรียกฟังก์ชัน Header() เพื่อที่จะทำให้ชนิดเนื้อหาที่เราอ่านผ่านเว็บเบราว์เซอร์อยู่ในรูปของภาษา XML เช่น

header('Content-Type: text/xml');

การใช้ PHP5 เรียกเว็บเซอร์วิสแบบ SOAP

รูปภาพของ kanda

ภาษา PHP
เป็นภาษาที่เหมาะสมในการพัฒนาเว็บแอปพลิเคชัน เนื่องจากเป็นภาษาที่ง่าย
เรียนรู้ได้เร็ว และสามารถนำมาใช้ได้ฟรี
การเรียกใช้เว็บเซอร์วิสด้วยภาษา PHP จึงเป็นที่นิยม ภาษา PHP
เวอร์ชันปัจจุบันคือ PHP5
ซึ่งมีความสามารถในการสนับสนุนการเรียกใช้เว็บเซอร์วิสในตัวโดยไม่ต้องดาวน์
โหลดเครื่องมืออะไรเพิ่มเติม
ซึ่งจะทำให้ง่ายกว่าการที่ต้องไปดาวน์โหลดเครื่องมืออย่างเช่น NuSOAP ซึ่ง อัปเดตล่าสุดในปี ค.ศ. 2005 อีกทั้งไม่ได้มีกลุ่มผู้ใช้อย่างมากเหมือนกับ SOAP extension ของ PHP5

การติดตั้ง WSO2 WSF/PHP บน Windows

รูปภาพของ kanda

ก่อนที่เราจะติดตั้ง WSO2 WSF/PHP เราจะต้องใช้ PHP เวอร์ชัน 5.2.x ขึ้นไป หากต้องการอัปเกรดเวอร์ชัน PHP ควรจะคัดลอกไฟล์ library ซึ่งขึ้นต้นด้วย lib*.dll ของโฟลเดอร์ php ไปไว้ที่โฟลเดอร์ c:\windows\system32 ด้วย

1) ติดตั้งไลบราลี ที่ WSF จะต้องใช้

1.1) ดาวน์โหลด libxml จาก http://www.zlatkovic.com/pub/libxml

จากนั้นให้ unzip ไฟล์ที่ดาวน์โหลดมา และให้คัดลอกไฟล์ libxml2.dll ซึ่งอยู่ในไดเรกทอรี bin ให้ไปไว้ที่ไดเรกทอรีี์ที่อยู่ใน PATH environment

1.2) ดาวน์โหลด iconv จาก http://www.zlatkovic.com/pub/libxml/

จากนั้นให้ unzip ไฟล์ที่ดาวน์โหลดมา และให้คัดลอกไฟล์ iconv.dll
ซึ่งอยู่ในไดเรกทอรี์ bin ให้ไปไว้ที่ไดเรกทอรีที่อยู่ใน PATH environment

การติดตั้ง PHP extension บนระบบ Windows

รูปภาพของ kanda

วิธีการติดตั้ง PHP extension เพิ่ม เราก็มักจะเข้าใจว่า แค่ uncomment

;extension=php_openssl.dll

ให้เป็น

extension=php_openssl.dll

และก็ทำให้แน่ใจว่าไดเรกทอรีที่มักจะเก็บไฟล์ extension นั้น ซึ่งมักจะเป็น c:\php\ext มีไฟล์ php_openssl.dll

แตหลายคนก็อาจจะเจอปัญหา PHP Startup : Unable to load dynamic library php_openssl.dll the operating system cannot run %1

ที่เจอปัญหานี้ไม่ใช่เป็นเพราะว่าระบบหาไฟล์ extension php_openssl.dll ไม่เจอ แต่หาไลบราลีที่ php_openssl ต้องเรียกใช้ไม่เจอ

วิธีแก้ก็คือ ทำให้ระบบพบไฟล์ไลบราลีที่ไฟล์ extension นั้นเรียกใช้ เช่นในปัญหาที่ยกตัวอย่างนี้ หากเราคัดลอก libeay32.dll ไปที่โฟลเดอร์ c:\windows\system32 ข้อผิดพลาดดังกล่าวก็หายไป