ผมได้หัวข้อโปรเจคให้ทำเว็บที่สามารถพิมพ์ code แล้ว ทำการ compile สามารถเอาผลลัพธ์ออกมาได้ อยากทราบว่าเราสามารถให้ php เรียกการใช้งาน compiler ได้อย่างไร
รับค่า String มาแล้วใช้คำสั่ง eval() อันนี้เป็นหลักการเบื้องต้นครับ แต่เราต้องดูเรื่อง ๆ อื่น ๆ ไปด้วย เช่น output security โดยทั่วไป จะทำเป็น sandbox กันครับ
เขาบอกภาษา C ไม่ใช่เหรอคับ - -
ลืมดูครับ งั้นเอาใหม่ ก็รับมาเป็น String แล้วใช้คำสั่ง exc เรียกใช้ C Complier ครับ
ใช้ shell_exec() เรียก GCC/CLang ?
ความหมายประมาณ ใช้ php สร้าง ไฟล์ *.cpp ก่อน แล้วใช้ shell_exec() เรียกการใช้งานเพื่อสร้างไฟล์ *.exe แล้วก็ echo shell_exec(ชื่อไฟล์.exe); เพื่อเรียกรันตัวโปรแกรม exe แบบนี้ผมเข้าใจถูกรึเปล่าครับ
ถ้าคุณจะเอาถึงขั้นรันด้วยเลยก็ใช่ครับ
แต่จะติดเรื่อง Security หรือเปล่านี่ผมไม่ทราบนะ
มันเรียกว่า online judge ครับเห็นมีโค้ดแจกกันอยู่บ้างลองค้นดู
online judge ส่วนมากเป็นโค้ด Java ครับ (เท่าที่รู้ที่แจกของต่างประเทศก็ online-judge)
ถ้าเอาของคนไทยก็พอมี คือ cafe-grader (ruby), fossil-grader (php+c)
ลองดูของ TUTOI 9 ในส่วนของ โปรแกรมที่ใช้ในการตรวจคำตอบเพื่อให้คะแนน (grader) ดูครับ
บล็อกส่วนตัวที่อัพเดตตามอารมณ์และความขยัน :P
ขอบคุณมากๆครับ ตัวนี้น่าจะใกล้เคียงที่สุดแล้วครับ
รับค่า String มาแล้วใช้คำสั่ง eval() อันนี้เป็นหลักการเบื้องต้นครับ แต่เราต้องดูเรื่อง ๆ อื่น ๆ ไปด้วย เช่น output security โดยทั่วไป จะทำเป็น sandbox กันครับ
เขาบอกภาษา C ไม่ใช่เหรอคับ - -
ลืมดูครับ งั้นเอาใหม่ ก็รับมาเป็น String แล้วใช้คำสั่ง exc เรียกใช้ C Complier ครับ
ใช้ shell_exec() เรียก GCC/CLang ?
ความหมายประมาณ ใช้ php สร้าง ไฟล์ *.cpp ก่อน แล้วใช้ shell_exec() เรียกการใช้งานเพื่อสร้างไฟล์ *.exe
แล้วก็ echo shell_exec(ชื่อไฟล์.exe); เพื่อเรียกรันตัวโปรแกรม exe แบบนี้ผมเข้าใจถูกรึเปล่าครับ
ถ้าคุณจะเอาถึงขั้นรันด้วยเลยก็ใช่ครับ
แต่จะติดเรื่อง Security หรือเปล่านี่ผมไม่ทราบนะ
มันเรียกว่า online judge ครับเห็นมีโค้ดแจกกันอยู่บ้างลองค้นดู
online judge ส่วนมากเป็นโค้ด Java ครับ (เท่าที่รู้ที่แจกของต่างประเทศก็ online-judge)
ถ้าเอาของคนไทยก็พอมี คือ cafe-grader (ruby), fossil-grader (php+c)
ลองดูของ TUTOI 9 ในส่วนของ โปรแกรมที่ใช้ในการตรวจคำตอบเพื่อให้คะแนน (grader) ดูครับ
บล็อกส่วนตัวที่อัพเดตตามอารมณ์และความขยัน :P
ขอบคุณมากๆครับ ตัวนี้น่าจะใกล้เคียงที่สุดแล้วครับ