ล่าสุดการพัฒนาเว็บบทเรียน
×

PHP เกี่ยวกับการสอน

PHP บ้าน PHP แนะนำ PHP ติดตั้ง PHP วากยสัมพันธ์ PHP ตัวแปร PHP Echo / พิมพ์ PHP ชนิดข้อมูล PHP เงื่อนไข PHP ค่าคงที่ PHP ผู้ประกอบการ PHP If...Else...Elseif PHP Switch PHP ในขณะที่ลูป PHP สำหรับลูป PHP ฟังก์ชั่น PHP แถว PHP เรียงลำดับอาร์เรย์ PHP Superglobals

PHP การจัดการ

PHP ฟอร์ม การจัดการ PHP ฟอร์ม การตรวจสอบ PHP ฟอร์ม จำเป็นต้องใช้ PHP ฟอร์ม URL/E-mail PHP ฟอร์ม สมบูรณ์

PHP สูง

PHP อาร์เรย์หลายมิติ PHP วันและเวลา PHP ประกอบด้วย PHP ไฟล์ การจัดการ PHP ไฟล์ เปิด / อ่าน PHP ไฟล์ สร้าง / เขียน PHP ไฟล์ อัปโหลด PHP Cookies PHP Sessions PHP ฟิลเตอร์ PHP Filters สูง PHP ผิดพลาด การจัดการ PHP ข้อยกเว้น

MySQL Database

MySQL ฐานข้อมูล MySQL สัมพันธ์ MySQL Create DB MySQL Create ตาราง MySQL Insert Data MySQL รับ ID เข้าครั้งสุดท้าย MySQL ใส่หลาย MySQL Prepared MySQL Select Data MySQL Delete Data MySQL Update Data MySQL Limit Data

PHP - XML

PHP XML parsers PHP SimpleXML Parser PHP SimpleXML - Get PHP XML Expat PHP XML DOM

PHP - AJAX

AJAX แนะนำ AJAX PHP AJAX ฐานข้อมูล AJAX XML AJAX ค้นหาสด AJAX RSS Reader AJAX โพลล์

PHP Examples

PHP ตัวอย่าง PHP ทดสอบ PHP ใบรับรอง

PHP การอ้างอิง

PHP แถว PHP ปฏิทิน PHP วันที่ PHP ไดเรกทอรี PHP ผิดพลาด PHP ระบบแฟ้ม PHP กรอง PHP FTP PHP HTTP PHP Libxml PHP จดหมาย PHP คณิตศาสตร์ PHP อื่น ๆ PHP MySQLi PHP SimpleXML PHP เชือก PHP XML PHP Zip PHP ช่วงเวลา

 

PHP 5 ตัวแปรทั่วโลก - Superglobals


Superglobals ถูกนำมาใช้ใน PHP 4.1.0 และตัวแปรในตัวที่มักจะมีอยู่ในขอบเขตทั้งหมด


PHP ตัวแปรทั่วโลก - Superglobals

ตัวแปรที่กำหนดไว้ล่วงหน้าหลายใน PHP มี "superglobals" ซึ่งหมายความว่าพวกเขาจะสามารถเข้าถึงได้ตลอดเวลาโดยไม่คำนึงถึงขอบเขต - และคุณสามารถเข้าถึงได้จากฟังก์ชั่นใด ๆ ชั้นเรียนหรือไฟล์ได้โดยไม่ต้องทำอะไรเป็นพิเศษ

ตัวแปร PHP superglobal คือ:

  • $ GLOBALS
  • $ _SERVER
  • $ _REQUEST
  • $ _POST
  • $ _GET
  • $ _FILES
  • $ _ENV
  • $ _COOKIE
  • $ _SESSION

บทนี้จะอธิบายบางส่วนของ superglobals และส่วนที่เหลือจะได้รับการอธิบายในบทต่อ


PHP $ GLOBALS

$ GLOBALS เป็นตัวแปร PHP โลกซูเปอร์ซึ่งจะใช้ในการเข้าถึงตัวแปรทั่วโลกจากที่ใดก็ได้ในสคริปต์ PHP (หรือจากภายในฟังก์ชั่นหรือวิธีการ)

ร้านค้า PHP ตัวแปรทั่วโลกทั้งหมดในอาร์เรย์เรียกว่า $ GLOBALS [ index ] ดัชนีเก็บชื่อของตัวแปร

ตัวอย่างด้านล่างนี้แสดงให้เห็นถึงวิธีการใช้ซุปเปอร์ตัวแปรทั่วโลก $ GLOBALS:

ตัวอย่าง

<?php
$x = 75;
$y = 25;
 
function addition() {
    $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y'];
}
 
addition();
echo $z;
?>
ตัวอย่างเช่นเรียกใช้»

ในตัวอย่างข้างต้นตั้งแต่ Z เป็นปัจจุบันตัวแปรภายในอาร์เรย์ $ GLOBALS ก็ยังสามารถเข้าถึงได้จากนอกฟังก์ชั่น!


PHP $ _SERVER

$ _SERVER เป็นตัวแปร PHP โลกซุปเปอร์ซึ่งเก็บข้อมูลเกี่ยวกับส่วนหัวของเส้นทางและสถานที่สคริปต์

ตัวอย่างด้านล่างแสดงวิธีการใช้งานบางส่วนขององค์ประกอบใน $ _SERVER นี้:

ตัวอย่าง

<?php
echo $_SERVER['PHP_SELF'];
echo "<br>";
echo $_SERVER['SERVER_NAME'];
echo "<br>";
echo $_SERVER['HTTP_HOST'];
echo "<br>";
echo $_SERVER['HTTP_REFERER'];
echo "<br>";
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br>";
echo $_SERVER['SCRIPT_NAME'];
?>
ตัวอย่างเช่นเรียกใช้»

ตารางต่อไปนี้แสดงองค์ประกอบที่สำคัญที่สุดที่สามารถไปภายใน $ _SERVER:

องค์ประกอบ / รหัส ลักษณะ
$ _SERVER [ 'PHP_SELF'] ผลตอบแทนที่ได้ชื่อไฟล์ของสคริปต์ในขณะนี้การดำเนินการ
$ _SERVER [ 'GATEWAY_INTERFACE'] ส่งกลับรุ่นของ Common Gateway อินเตอร์เฟส (CGI) เซิร์ฟเวอร์ใช้
$ _SERVER [ 'SERVER_ADDR'] ส่งกลับที่อยู่ IP ของเซิร์ฟเวอร์โฮสต์
$ _SERVER [ 'SERVER_NAME'] ผลตอบแทนที่ได้ชื่อของเซิร์ฟเวอร์โฮสต์ (such as www.w3ii.com)
$ _SERVER [ 'SERVER_SOFTWARE'] กลับสตริงประจำตัวเซิร์ฟเวอร์ (such as Apache/2.2.24)
$ _SERVER [ 'SERVER_PROTOCOL'] ส่งกลับชื่อและการแก้ไขของโปรโตคอลข้อมูล (such as HTTP/1.1)
$ _SERVER [ 'REQUEST_METHOD'] วิธีการส่งกลับคำขอที่ใช้ในการเข้าถึงหน้าเว็บ (such as POST)
$ _SERVER [ 'REQUEST_TIME'] ผลตอบแทนการประทับเวลาของการเริ่มต้นของการร้องขอที่ (such as 1377687496)
$ _SERVER [ 'QUERY_STRING'] กลับสตริงแบบสอบถามถ้าหน้าจะเข้าถึงได้ผ่านทางสตริงแบบสอบถาม
$ _SERVER [ 'HTTP_ACCEPT'] ผลตอบแทนยอมรับโหม่งคำขอปัจจุบัน
$ _SERVER [ 'HTTP_ACCEPT_CHARSET'] ส่งกลับหัว Accept_Charset จากคำขอปัจจุบัน (เช่น UTF-8, ISO-8859-1)
$ _SERVER [ 'HTTP_HOST'] ผลตอบแทนที่ส่วนหัวของโฮสต์จากคำขอปัจจุบัน
$ _SERVER [ 'HTTP_REFERER'] ส่งกลับ URL ที่สมบูรณ์ของหน้าปัจจุบัน (ไม่น่าเชื่อถือเพราะไม่ได้ทั้งหมดใช้ตัวแทนสนับสนุนมัน)
$ _SERVER [ 'HTTPS'] เป็นสคริปต์ที่สอบถามผ่านโปรโตคอล HTTP ที่เชื่อถือได้
$ _SERVER [ 'REMOTE_ADDR'] ส่งกลับที่อยู่ IP จากการที่ผู้ใช้กำลังดูหน้าปัจจุบัน
$ _SERVER [ 'REMOTE_HOST'] ส่งกลับชื่อโฮสต์จากการที่ผู้ใช้กำลังดูหน้าปัจจุบัน
$ _SERVER [ 'REMOTE_PORT'] ส่งกลับพอร์ตที่ถูกนำมาใช้ในเครื่องของผู้ใช้ในการสื่อสารกับเว็บเซิร์ฟเวอร์
$ _SERVER [ 'SCRIPT_FILENAME'] ส่งคืนชื่อพา ธ สัมบูรณ์ของสคริปต์ในขณะนี้การดำเนินการ
$ _SERVER [ 'SERVER_ADMIN'] ผลตอบแทนที่คุ้มค่าให้กับคำสั่ง SERVER_ADMIN ในแฟ้มการกำหนดค่าเว็บเซิร์ฟเวอร์ (ถ้าสคริปต์ของคุณทำงานบนโฮสต์เสมือนมันจะเป็นค่าที่กำหนดไว้สำหรับว่าโฮสต์เสมือน) (such as [email protected])
$ _SERVER [ 'SERVER_PORT'] ส่งกลับพอร์ตบนเครื่องเซิร์ฟเวอร์ที่ถูกใช้โดยเว็บเซิร์ฟเวอร์สำหรับการสื่อสาร (such as 80)
$ _SERVER [ 'SERVER_SIGNATURE'] ส่งกลับรุ่นของเซิร์ฟเวอร์และชื่อโฮสต์เสมือนที่มีการเพิ่มไปยังหน้าเว็บเซิร์ฟเวอร์ที่สร้าง
$ _SERVER [ 'PATH_TRANSLATED'] ส่งกลับเส้นทางที่ใช้ระบบไฟล์สคริปต์ปัจจุบัน
$ _SERVER [ 'สคริปต์'] ส่งกลับเส้นทางของสคริปต์ปัจจุบัน
$ _SERVER [ 'SCRIPT_URI'] ส่งกลับ URI ของหน้าปัจจุบัน

PHP $ _REQUEST

PHP $ _REQUEST ถูกนำมาใช้ในการเก็บรวบรวมข้อมูลหลังจากกรอกแบบฟอร์มเว็บ HTML

ตัวอย่างด้านล่างแสดงแบบฟอร์มที่มีช่องใส่และปุ่มส่ง เมื่อผู้ใช้ส่งข้อมูลได้โดยคลิกที่ "Submit" ข้อมูลในแบบฟอร์มจะถูกส่งไปยังแฟ้มที่ระบุไว้ใน action แอตทริบิวต์ของ <form> แท็ก ในตัวอย่างนี้เราชี้ไปที่ไฟล์นี้ตัวเองสำหรับการประมวลผลข้อมูลแบบฟอร์ม หากคุณต้องการที่จะใช้ไฟล์ PHP อื่นเพื่อประมวลผลข้อมูลแบบฟอร์มเปลี่ยนที่มีชื่อไฟล์ที่คุณเลือก จากนั้นเราสามารถใช้ซุปเปอร์ตัวแปรทั่วโลก $ _REQUEST ที่จะเก็บค่าของฟิลด์การป้อนข้อมูล:

ตัวอย่าง

<html>
<body>

<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
  Name: <input type="text" name="fname">
  <input type="submit">
</form>

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // collect value of input field
    $name = $_REQUEST['fname'];
    if (empty($name)) {
        echo "Name is empty";
    } else {
        echo $name;
    }
}
?>

</body>
</html>
ตัวอย่างเช่นเรียกใช้»

PHP $ _POST

PHP $ _POST ใช้กันอย่างแพร่หลายในการเก็บรวบรวมข้อมูลในแบบฟอร์มหลังจากกรอกแบบฟอร์ม HTML ที่มีวิธี = "โพสต์" $ _POST ยังถูกนำมาใช้กันอย่างแพร่หลายในการส่งผ่านตัวแปร

ตัวอย่างด้านล่างแสดงแบบฟอร์มที่มีช่องใส่และปุ่มส่ง เมื่อผู้ใช้ส่งข้อมูลได้โดยคลิกที่ "Submit" ข้อมูลในแบบฟอร์มจะถูกส่งไปยังแฟ้มที่ระบุไว้ใน action แอตทริบิวต์ของ <form> แท็ก ในตัวอย่างนี้เราชี้ไปยังแฟ้มตัวเองสำหรับการประมวลผลข้อมูลแบบฟอร์ม หากคุณต้องการที่จะใช้ไฟล์ PHP อื่นเพื่อประมวลผลข้อมูลแบบฟอร์มเปลี่ยนที่มีชื่อไฟล์ที่คุณเลือก จากนั้นเราสามารถใช้ซุปเปอร์ตัวแปรทั่วโลก $ _POST ที่จะเก็บค่าของฟิลด์การป้อนข้อมูล:

ตัวอย่าง

<html>
<body>

<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
  Name: <input type="text" name="fname">
  <input type="submit">
</form>

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // collect value of input field
    $name = $_POST['fname'];
    if (empty($name)) {
        echo "Name is empty";
    } else {
        echo $name;
    }
}
?>

</body>
</html>
ตัวอย่างเช่นเรียกใช้»

PHP $ _GET

PHP $ _GET ยังสามารถใช้ในการเก็บรวบรวมข้อมูลในแบบฟอร์มหลังจากกรอกแบบฟอร์ม HTML ที่มี method = "รับ"

$ _GET ยังสามารถเก็บข้อมูลที่ส่งใน URL

สมมติเรามีเพจ HTML ที่มีการเชื่อมโยงกับพารามิเตอร์:

<html>
<body>

<a href="test_get.php?subject=PHP&web=w3ii.com">Test $GET</a>

</body>
</html>

เมื่อผู้ใช้คลิกที่ลิงค์ "Test $GET" พารามิเตอร์ "subject" และ "web" จะถูกส่งไป "test_get.php" และจากนั้นคุณสามารถเข้าถึงค่าของพวกเขาใน "test_get.php" ด้วย $ _GET

ตัวอย่างด้านล่างแสดงรหัสใน "test_get.php" :

ตัวอย่าง

<html>
<body>

<?php
echo "Study " . $_GET['subject'] . " at " . $_GET['web'];
?>

</body>
</html>
ตัวอย่างเช่นเรียกใช้»

เคล็ดลับ: คุณจะได้เรียนรู้เพิ่มเติมเกี่ยวกับ $ _POST และ $ _GET ใน แบบฟอร์ม PHP บท