ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

constant() ใช้ในการอ่านค่าคงของค่าคงที่เพื่อนำไปใช้งาน

หลายๆคนที่มีประสบการณ์ในการเขียนโปรแกรม คงรู้จักค่า Constant กันมาบ้างแล้ว แต่สำหรับผู้ที่ยังไม่ทราบนั้นก็ไม่เป็นไรครับ เพราะวันนี้เราได้นำเนื้อหาเกี่ยวกับค่า Constant มาฝากในรูปแบบเนื้อหาโดยย่อที่เข้าใจได้ง่ายๆ ครับ 

ค่าคงที่ (Constant) คือ ตัวแปรที่เราต้องการใช้เก็บข้อมูลค่าใดค่าหนึ่งโดยเฉพาะ ไม่สามารถเปลี่ยนแปลงค่าในภายหลังได้ ตัวแปรค่าคงที่นั้นจะแตกต่างจากตัวแปรธรรมดา เนื่องจากเราจะไม่ใช้สัญลักษณ์ $ กำกับ โดยคำสั่ง หรือ ฟังก์ชัน ที่เกี่ยวกับการใช้ค่าคงที่มีดังนี้ครับ

constant("ชื่อค่าคงที่") = ใช้ในการอ่านค่าคงของค่าคงที่เพื่อนำไปใช้งาน
defined("ชื่อค่าคงที่")  = ใช้ในการตรวจสอบว่ามีค่าคงที่ตามระบุหรือไม่ หากมีจะคืนค่าเป็น true หากไม่มีจะคืนค่า false
define("ชื่อค่าคงที่",ค่าที่กำหนด)  = สร้างค่าคงที่ เช่น define("PI",3.14); เป็นต้น

รูปแบบ syntax 

constant ( string $name ) : mixed

การคืนค่า 

ค่าของ contant (ค่าคงที่) หรือ null

ตัวอย่างการใช้งาน

<?php

define("MAXSIZE", 100);

echo MAXSIZE;
echo constant("MAXSIZE"); // same thing as the previous line


interface bar {
    const test = 'foobar!';
}

class foo {
    const test = 'foobar!';
}

$const = 'test';

var_dump(constant('bar::'. $const)); // string(7) "foobar!"
var_dump(constant('foo::'. $const)); // string(7) "foobar!"

?>

เพื่อไม่ให้ซับซ้อน เราต้องเข้าใจ Constant ก่อนน่ะครับ constant จะเป็นเหมือนกับตัวแปรทั่วไปแต่จะไม่สามารถเปลี่ยนแปลงค่าได้ ไม่จำเป็นต้องมีเครื่องหมาย $ นำหน้า ค่าคงที่จะอยู่ใน Global Scope โดยอัตโนมัติ  ส่วนการกำหนด constant นั้น มักจะใช้ ฟังก์ชัน define() ในการกำหนดค่า   ฟังก์ชัน constant นี้เป็นที่นิยมค่อนข้างมาก เพื่อเรียกค่าคงที่ อย่างที่รู้กันดี บางค่าไม่ควรที่จะเปลี่ยนแปลงหรือต้องคงที่แบบนั้นตลอดไป เช่น ค่า pi ที่เท่ากับ 3.142 น่ะครับ  หวังว่าผู้อ่านจะนำไปใช้ได้ถูกต้องน่ะครับ

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : ฟังก์ชัน PHP

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
สร้างแบบสอบถามออนไลน์ ด้วย Excel Survey บน OneDrive
โดย birdkritsna อ 17 ก.ย. 2019 6:31 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
7
อ 17 ก.ย. 2019 6:31 pm โดย birdkritsna
ทำไมจึงต้องมี Data Mining (เหมืองข้อมูล) ?
โดย birdkritsna อ 17 ก.ย. 2019 6:04 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
6
อ 17 ก.ย. 2019 6:04 pm โดย birdkritsna
ทำความรู้จักกับ Big Data คืออะไร
โดย birdkritsna อ 17 ก.ย. 2019 5:36 pm บอร์ด SQL Knowledge
1
10
อ 17 ก.ย. 2019 5:52 pm โดย mindphp
วิธีการใช้งานฟังชั่น serialize() กับ unserialize() ใน phpbb
โดย Ittichai_chupol อ 17 ก.ย. 2019 5:18 pm บอร์ด PHP Knowledge
0
3
อ 17 ก.ย. 2019 5:18 pm โดย Ittichai_chupol
รู้จักกับคลังข้อมูล(Data Warehouse) คืออะไร มีประโยชน์อะไรบ้าง
โดย birdkritsna อ 17 ก.ย. 2019 5:11 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
8
อ 17 ก.ย. 2019 5:11 pm โดย birdkritsna
MS Exchange ไมโครซอฟท์ต่ออายุซัพพอร์ต 2010 ให้อีก 9 เดือน ถึง ตุลาคม 2020
โดย chatee supasand อ 17 ก.ย. 2019 5:09 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
2
อ 17 ก.ย. 2019 5:09 pm โดย chatee supasand
สิ่งที่ต้องทำ ก่อนโทรศัพท์หายหรือโดนขโมย
โดย birdkritsna อ 17 ก.ย. 2019 3:23 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
6
อ 17 ก.ย. 2019 3:23 pm โดย birdkritsna
VDO - ขั้นตอนการยกเลิกใบแจ้งหนี้ด้วยวิธีที่ถูกต้อง
โดย EyePornnipa อ 17 ก.ย. 2019 3:05 pm บอร์ด M089 - นางสาวพรนิภา ราชธานี
2
14
อ 17 ก.ย. 2019 5:32 pm โดย EyePornnipa
วิธีขับขี่ช่วงฝนตก ป้องกันอุบัติเหตุทางถนน
โดย birdkritsna อ 17 ก.ย. 2019 2:56 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
6
อ 17 ก.ย. 2019 2:56 pm โดย birdkritsna
สร้าง Menu Item ที่จะให้เมนูแสดงเฉพาะภาษาอังกฤษแล้ว Error ครับ
โดย jamepiyawat อ 17 ก.ย. 2019 2:52 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
5
16
อ 17 ก.ย. 2019 5:08 pm โดย jamepiyawat
ปัญหาไม่สามารถแสดงผลได้ทางหน้าจอ ขึ้น Object not found!
โดย birdkritsna อ 17 ก.ย. 2019 12:11 pm บอร์ด Programming - PHP
4
28
อ 17 ก.ย. 2019 3:56 pm โดย birdkritsna
ทำอย่างไรให้ใน loop แสดงสินค้าไม่ซ้ำกัน
โดย Patipat อ 17 ก.ย. 2019 11:19 am บอร์ด Joomla Development
0
8
อ 17 ก.ย. 2019 11:19 am โดย Patipat
รู้จักกับระบบปฎิบัติการ Harmony OS ที่ไม่ได้มีไว้แค่มือถือเท่านั้น
โดย birdkritsna อ 17 ก.ย. 2019 11:06 am บอร์ด Mobile Application Developing- Android, iOS
0
11
อ 17 ก.ย. 2019 11:06 am โดย birdkritsna
งานประจำวันที่ 17 กันยายน 2562
โดย birdkritsna อ 17 ก.ย. 2019 10:35 am บอร์ด M094 - กฤษณะ จะโรจน์รัมย์
3
17
อ 17 ก.ย. 2019 7:22 pm โดย birdkritsna
R - mdsoft_seleniumTest_mzchelix_byM088 (MT33) ทำเทส selenium
โดย chatee supasand อ 17 ก.ย. 2019 10:30 am บอร์ด MT33 - นายชาตรี สุภาแสน
0
5
อ 17 ก.ย. 2019 10:30 am โดย chatee supasand
R - mdsoft_seleniumTest_mzccart_byM084 (MT33) ทำเทส selenium
โดย chatee supasand อ 17 ก.ย. 2019 10:29 am บอร์ด MT33 - นายชาตรี สุภาแสน
0
7
อ 17 ก.ย. 2019 10:29 am โดย chatee supasand
งานประจำวันที่ 17 กันยายน 2562
โดย Patipat อ 17 ก.ย. 2019 10:23 am บอร์ด M088 - ปฏิภัทร สารธรรม
3
14
อ 17 ก.ย. 2019 7:22 pm โดย Patipat
งานประจำวันที่ 17 กันยายน 2562
โดย chatee supasand อ 17 ก.ย. 2019 10:07 am บอร์ด MT33 - นายชาตรี สุภาแสน
1
5
อ 17 ก.ย. 2019 7:37 pm โดย chatee supasand
งานประจำวันที่ 17 กันยายน 2562
โดย jamepiyawat อ 17 ก.ย. 2019 10:02 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
1
4
อ 17 ก.ย. 2019 7:29 pm โดย jamepiyawat
งานประจำวันที่ 17 กันยายน 2562
โดย jirawoot อ 17 ก.ย. 2019 9:55 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
7
อ 17 ก.ย. 2019 7:27 pm โดย jirawoot