การสร้างไฟล์ ภาษา ใน extension

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderator: mindphp, ผู้ดูแลกระดาน

Ittichai_chupol
PHP Super Member
PHP Super Member
โพสต์: 463
ลงทะเบียนเมื่อ: 19/09/2018 10:33 am

การสร้างไฟล์ ภาษา ใน extension

โพสต์โดย Ittichai_chupol » 26/10/2018 5:15 pm

ขั้นอตนการสร้างไฟล์ ภาษา ใน extension

1.สร้าง foder ชื่อว่า language ลงใน foder extension
วิธีการสร้าง extension


2.จากนั้นสร้าง foder อีก 2 foder โดยกำหนดชื่อว่า en กับ th

-en นั้นจะเป็น foder ที่จะเก็บตัวแปรภาษาที่เป็นภาษาอังกฤษ
-th นั้นจะเก็บตัวแปรที่เป็นภาษาไทย

3.สร้างไฟล์ ลงใน foder ทั้ง 2 ที่สร้างขึ้น โดยเป็นไฟล์ php แล้วกำหนดชื่อไฟลืทั้ง 2 ให้ตรงกับชื่อของ extension ที่สร้างขึ้น

26-01.png


ตัวอย่างอย่างโคด ใน ไฟล์ถาษาที่อยู่ใน 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',
   
));



ตัวอย่างอย่างโคด ใน ไฟล์ถาษาที่อยู่ใน foder th

โค้ด: เลือกทั้งหมด

<?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
[url]=http://www.mindphp.com/forums/viewtopic.php?f=6&t=51137วิธีการสร้าง listener[/url]
โคดในไฟล์ 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;
     }
    }

ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 10 และ บุคคลทั่วไป 0 ท่าน