1.สร้าง foder ชื่อว่า language ลงใน foder extension
วิธีการสร้าง extension
2.จากนั้นสร้าง foder อีก 2 foder โดยกำหนดชื่อว่า en กับ th
-en นั้นจะเป็น foder ที่จะเก็บตัวแปรภาษาที่เป็นภาษาอังกฤษ
-th นั้นจะเก็บตัวแปรที่เป็นภาษาไทย
3.สร้างไฟล์ ลงใน foder ทั้ง 2 ที่สร้างขึ้น โดยเป็นไฟล์ php แล้วกำหนดชื่อไฟลืทั้ง 2 ให้ตรงกับชื่อของ extension ที่สร้างขึ้น
ตัวอย่างอย่างโคด ใน ไฟล์ถาษาที่อยู่ใน foder en
โค้ด: เลือกทั้งหมด
<?php
/**
*
* @package phpBB Extension - Acme Demo
* @copyright (c) 2013 phpBB Group
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
*
*/
if (!defined('IN_PHPBB'))
{
exit;
}
if (empty($lang) || !is_array($lang))
{
$lang = array();
}
$lang = array_merge($lang, array(
'MINDPHP_SAMPLE1' => 'MANU_TEST',
'NUMBERPHONE' =>'NUMBER PHONE',
));
โค้ด: เลือกทั้งหมด
<?php
/**
*
* @package phpBB Extension - Acme Demo
* @copyright (c) 2013 phpBB Group
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
*
*/
if (!defined('IN_PHPBB'))
{
exit;
}
if (empty($lang) || !is_array($lang))
{
$lang = array();
}
$lang = array_merge($lang, array(
'MINDPHP_SAMPLE1' => 'เมนูทดสอบ',
'NUMBERPHONE' =>'NUMBER PHONE',
));
4.การเรียกใช้งานไฟล์ ภาษานั้นเราจะเขียนโคด ลงในไฟล์ listener.php ที่อยู่ใน foder ชื่อว่า event
=https://www.mindphp.com/forums/viewtopi ... ง listener
โคดในไฟล์ listener.php
โค้ด: เลือกทั้งหมด
<?php
namespace mindphp\sample1\event;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
class listener implements EventSubscriberInterface
{
static public function getSubscribedEvents() {
return array(
'core.page_header' => 'page_header',
'core.user_setup' => 'load_language_on_setup', //เรียกใช้งาน event สำหรับตรวจสอบภาษาที่ผู้งานตั้งค่า
);
}
protected $halper;
protected $template;
public function __construct( \phpbb\controller\helper $halper , \phpbb\template\template $template){
$this->halper = $halper;
$this->template = $template;
}
public function page_header($event) {
}
public function load_language_on_setup($event) { //function สำหรับเรียกใช้งานตัวแปลภาษา
$lang_set_ext = $event['lang_set_ext'];
$lang_set_ext[] = array(
'ext_name' => 'mindphp/sample1',
'lang_set' => 'sample1',
);
$event['lang_set_ext'] = $lang_set_ext;
}
}