ให้เรตสมาชิก: 5 / 5

ดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งาน
 

 

      การทำเว็บไซต์ 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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ขั้นตอนการอัดวิดิโอ
โดย numtan5839 พฤ 07 พ.ย. 2019 2:31 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
1
10
พฤ 07 พ.ย. 2019 2:47 pm โดย thatsawan
วิธีการเพิ่มค่าลดค่า array แต่ละค่าใน php
โดย jamepiyawat พฤ 07 พ.ย. 2019 2:11 pm บอร์ด PHP Knowledge
0
35
พฤ 07 พ.ย. 2019 2:11 pm โดย jamepiyawat
วิธีการใช้ curl เพื่อขอข้อมูลเว็บไซต์
โดย jamepiyawat พฤ 07 พ.ย. 2019 1:46 pm บอร์ด PHP Knowledge
0
38
พฤ 07 พ.ย. 2019 1:46 pm โดย jamepiyawat
Joomla 3.9.13 พร้อมให้อัปเดตแล้ว ปรับปรุงความปลอดภัยและระบบให้ดีขึ้น
โดย tsukasaz พฤ 07 พ.ย. 2019 1:14 pm บอร์ด MindPHP News / Feedback
0
78
พฤ 07 พ.ย. 2019 1:14 pm โดย tsukasaz
VDO - การแนบไฟล์รูปภาพในบอร์ด Mindphp
โดย numtan5839 พฤ 07 พ.ย. 2019 12:28 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
3
27
พ 13 พ.ย. 2019 6:22 pm โดย mindphp
ทำไมข้อมูลของใบแจ้งหนี้ถึงไม่แสดงเมื่อกดHeader for report บนระบบERP
โดย nnamfon.26 พฤ 07 พ.ย. 2019 12:13 pm บอร์ด OpenERP - MD-ERP (Main)
5
17
พฤ 07 พ.ย. 2019 6:35 pm โดย mindphp
จะทำอย่างไรให้เราดึงข้อมูล Email ของ admin joomal ออมมาได้ครับ
โดย jamepiyawat พฤ 07 พ.ย. 2019 11:37 am บอร์ด Joomla Development
4
83
ศ 08 พ.ย. 2019 2:32 pm โดย tsukasaz
ผู้ป่วย 4 โรคเรื้อรัง และมีสิทธิบัตรทอง สามารถขอรับยาที่ร้านขายยาใกล้บ้านได้แล้ว
โดย promotion พฤ 07 พ.ย. 2019 11:16 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
35
พฤ 07 พ.ย. 2019 11:16 am โดย promotion
ทำความเข้าใจกับตัวอักษรที่นำหน้าเลขพัสดุ
โดย numtan5839 พฤ 07 พ.ย. 2019 11:04 am บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
71
พฤ 07 พ.ย. 2019 11:04 am โดย numtan5839
งานประจำวันที่ 7 พฤศจิกายน 2562
โดย numtan5839 พฤ 07 พ.ย. 2019 10:07 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
9
78
ศ 08 พ.ย. 2019 2:01 pm โดย numtan5839
อยากทราบวิธีการปรับแก้ไข ค่าของคอลลัม in_message ในการแนบไฟล์รูปภาพของ pm ใน phpbb
โดย Ittichai_chupol พ 06 พ.ย. 2019 6:11 pm บอร์ด Programming - PHP
4
109
พ 06 พ.ย. 2019 6:47 pm โดย Ittichai_chupol
4 ขั้นตอนง่ายๆในการทำ Infographic ด้วย Photoshop
โดย numtan5839 พ 06 พ.ย. 2019 6:36 pm บอร์ด Graphic design
0
53
พ 06 พ.ย. 2019 6:36 pm โดย numtan5839
วิธีการสร้าง Brand identity ด้วยโปรแกรม Canva
โดย numtan5839 พ 06 พ.ย. 2019 5:13 pm บอร์ด Graphic design
0
47
พ 06 พ.ย. 2019 5:13 pm โดย numtan5839
ออกแบบ UI ง่ายๆด้วย Adobe illustrator
โดย numtan5839 พ 06 พ.ย. 2019 3:57 pm บอร์ด Graphic design
0
56
พ 06 พ.ย. 2019 3:57 pm โดย numtan5839
การใช้ API ของไปรษณีย์ไทย
โดย bankjittapol พ 06 พ.ย. 2019 2:51 pm บอร์ด PHP Knowledge
0
64
พ 06 พ.ย. 2019 2:51 pm โดย bankjittapol
การปัดเศษ สรรพกรยอมรับการปัดเศษ เเบบรายสินค้า หรือ ยอดรวม ค่ะ
โดย thatsawan พ 06 พ.ย. 2019 11:15 am บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
0
49
พ 06 พ.ย. 2019 11:15 am โดย thatsawan
ผู้เล่นตัวจริงในสนาม (Football Lineup) แผนการเล่น เริ่มต้นใน สนาม ผู้เล่นชุดแรก และการจัดตัว
โดย bankjittapol พ 06 พ.ย. 2019 10:49 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
55
พ 06 พ.ย. 2019 10:49 am โดย bankjittapol
งานประจำวันที่ 6 พฤศจิกายน 2562
โดย numtan5839 พ 06 พ.ย. 2019 10:19 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
5
44
พ 06 พ.ย. 2019 6:47 pm โดย numtan5839
ขอ code วนลูป และเก็บใน dictionary
โดย Anonymous อ 05 พ.ย. 2019 7:08 pm บอร์ด Programming - C/C++ & java & Python
1
151
อ 05 พ.ย. 2019 8:07 pm โดย mindphp
max_allowed_packet คืออะไร ฐานข้อมูล MySQL , mariadb
โดย mindphp อ 05 พ.ย. 2019 5:46 pm บอร์ด SQL Knowledge
0
52
อ 05 พ.ย. 2019 5:46 pm โดย mindphp