ใช้ CakePHP จาก command line interface (terminal, console, etc.)

ใน CakePHP เราสามารถสั่งคำสังต่างใน shell ได้อยู่แล้ว เช่น ./cake bake (ต้องเข้า cd เข้าไปใน folder cake/console ก่อน) ที่มีไว้สร้าง controller, view และอื่นๆ อันโนมัติ.

มากไปกว่านั้นเรายังสร้างคำสั่งบน shell แบบนี้ขึ้นมาให้เองได้ง่ายๆ อีกด้วย. ในกรณีผมต้องการสร้าง shell ขึ้นมาเพื่อ encode password เพื่อใช้กับ AuthComponent ซึ่งจำเป็นต้องใช้ค่า Security.salt ใน app/config/core.php มาคำนวณด้วย ซึ่งแต่ละ app (project) สามารถแตกต่างกันได้. อย่างไรก็ตามเราไม่ต้องเขียนรายละเอียดเอง เพียงแต่เรียก function ชื่อ password จาก AuthComponent. ผมก็เลยเขียน encode.php ไว้ใน /app/vendors/shells แบบข้างล่าง.

password($this->args[0]);
    }
}
?>

เวลาจะเรียกใช้งานก็ cd เข้าไปใน folder cake/console แล้วก็เรียก ./cake encode <password ที่ต้องการ encode>

อ้างอิง

  1. http://cakebaker.42dh.com/2007/05/07/writing-a-custom-cakephp-console-script/
  2. http://api.cakephp.org/1.2/cake_8php-source.html

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s