การทำเว็บไซต์ 2 ภาษาด้วย  PHP  มีประโยชน์มาในการทำ  WebSite  2 ภาษา หรือมากกว่า 2 ภาษา สามารถทำได้หลายวิธี เช่น การ mod rewrite แต่ในที่นี้จะทำการส่งค่าผ่าน  URL  ที่เข้าใจง่ายกว่า 

 

ตัวอย่าง Code 

 

      ในส่วนของเนื้อหาที่ต้องเปลี่ยนไปตามภาษาที่เลือก อาจจะใช้วิธีสร้างไฟล์ที่สามารถเรียกใช้ได้ทุกหน้า ภายในไฟล์จะตรวจสอบค่า GET ที่ส่งมา และเก็บไว้ที่ตัวแปร ก่อนจะนำไปใช้เลือกข้อความตามภาษาที่กำหนด


หน้า config.php 

 

      วิธีที่ 1 : ตรววจสอบค่า GET ที่ส่งมา และเก็บไว้ที่ตัวแปร สร้างตัวแปรสำหรับเก็บข้อมูลตามภาษานั้นๆ และสร้างตัวแปรที่จะนำไปแสดงบนหน้าเว็บ

<?php
// นำค่าภาษาที่เลือกมาเก็บไว้ที่ตัวแปร โดยกำหนดค่าเริ่มต้นให้เป็นภาษาไทย ถ้ายังไม่ได้คลิกเลือกภาษา
$lang = isset($_GET['lang']) ? $_GET['lang'] : 'th' ;

// สร้างตัวแปรสำหรับเก็บข้อมูลตามภาษาต่างๆ
$arr_name = array('th' => 'สวัสดี', 'en' => 'Hello'); 

// ตัวแปรข้อมูลที่จะนำไปใช้แสดงบนหน้าเว็บต่างๆ
$name = $arr_name[$lang];

?>

 

      วิธีที่ 2 : ตรววจสอบค่า GET ที่ส่งมา และเก็บไว้ที่ตัวแปร สร้างตัวแปรสำหรับเก็บข้อมูลตามภาษานั้นๆ และสร้างตัวแปรที่จะนำไปแสดงบนหน้าเว็บ

<?php
// นำค่าภาษาที่เลือกมาเก็บไว้ที่ตัวแปร โดยกำหนดค่าเริ่มต้นให้เป็นภาษาไทย ถ้ายังไม่ได้คลิกเลือกภาษา
$lang = isset($_GET['lang']) ? $_GET['lang'] : 'th' ;

if($lang == 'th')
{
    $name = 'สวัสดี';
}
else if($lang == 'en')
{
    $name = 'Hello';
}

?>

 

หน้า index.php

     หรือไฟล์ที่ผู้ใช้งานต้องการให้แสดงผลในแต่ละหน้า

<?php 

require_once 'config.php';
echo $name;    


?>

 

ผลลัพธ์ 

 

     หน้า index.php

     หน้าเว็บภาษาไทย
   หน้าเว็บภาษาไทย

     

     หน้า index.php?lang=en

 

   หน้าเว็บภาษาอังกฤษ
หน้าเว็บภาษาอังกฤษ

 

การกำหนดลิงค์ในการแสดงผลแต่ละหน้า

  • ภาษาไทย => http://localhost/.....?lang=th
  • ภาษาอังกฤษ => http://localhost/....?lang=en

 

  ในตัวอย่างจะเป็นดังนี้

  • ภาษาไทย => http://localhost/index.php?lang=th หรือ  http://localhost/index.php?
  • ภาษาอังกฤษ => http://localhost/index.php?lang=en

 

ข่าวสารเพิ่มเติมเกี่ยวกับ PHP

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
อัพเดท joomla 3.10.12 to 4 ไม่ได้ครับ ติด Invalid login
โดย Itadm จ 25 มี.ค. 2024 3:35 pm บอร์ด Joomla Development
7
2465
ศ 29 มี.ค. 2024 1:50 pm โดย mindphp View Topic อัพเดท joomla 3.10.12 to 4 ไม่ได้ครับ ติด Invalid login
แนะนำการเดินทาง และสถานที่ท่องเที่ยวในจังหวัดขอนแก่น
โดย athirach.offcial จ 25 มี.ค. 2024 3:08 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
188
จ 25 มี.ค. 2024 3:08 pm โดย athirach.offcial View Topic แนะนำการเดินทาง และสถานที่ท่องเที่ยวในจังหวัดขอนแก่น
สอบถาม library หรือคำสั่งดู VDO ใช้เวลาดูไปเท่าไรและดูจบแล้วหรือไม่
โดย eange08 จ 25 มี.ค. 2024 1:28 pm บอร์ด Programming - PHP
2
907
พฤ 28 มี.ค. 2024 12:25 pm โดย eange08 View Topic สอบถาม library หรือคำสั่งดู VDO ใช้เวลาดูไปเท่าไรและดูจบแล้วหรือไม่
M181 - อธิราช กุลเมือง
โดย athirach.offcial จ 25 มี.ค. 2024 10:15 am บอร์ด Dev Teams
0
9
จ 25 มี.ค. 2024 10:15 am โดย athirach.offcial View Topic M181 - อธิราช กุลเมือง
การสำรองข้อมูล Backup Joomla! ทั้งเว็บ ด้วย MJClone
โดย mindphp อ 24 มี.ค. 2024 1:33 am บอร์ด MindPHP News & Feedback
0
218
อ 24 มี.ค. 2024 1:33 am โดย mindphp View Topic การสำรองข้อมูล Backup Joomla! ทั้งเว็บ ด้วย MJClone
Start Directadmin แบบเมนนวล
โดย mindphp ศ 22 มี.ค. 2024 5:35 am บอร์ด Linux - Web Server
1
234
ศ 22 มี.ค. 2024 5:43 am โดย mindphp View Topic Start Directadmin แบบเมนนวล
คำสั่ง Command Line สำรองเว็บไซต์ บน Directadmin Backup Website ขนาดใหญ่
โดย mindphp ศ 22 มี.ค. 2024 5:31 am บอร์ด Linux - Web Server
1
465
ศ 22 มี.ค. 2024 11:52 pm โดย mindphp View Topic คำสั่ง Command Line สำรองเว็บไซต์ บน Directadmin Backup Website ขนาดใหญ่
Vmware Exsi 5 เพิ่ม HDD เป็น data store ไม่ได้เจอ Error Call "HostDatastoreSystem.QueryVmfsDatastoreCreateOptions" for
โดย mindphp พฤ 21 มี.ค. 2024 6:53 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
3
505
ศ 05 เม.ย. 2024 10:04 am โดย mindphp View Topic Vmware Exsi 5 เพิ่ม HDD เป็น data store ไม่ได้เจอ Error  Call "HostDatastoreSystem.QueryVmfsDatastoreCreateOptions" for