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

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[ดัชนี]ดัชนีเก็บชื่อของตัวแปร

ตัวอย่างด้านล่างนี้แสดงให้เห็นถึงวิธีการใช้ซุปเปอร์ตัวแปรทั่วโลก $ 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:

Element/Code Description
$_SERVER['PHP_SELF'] Returns the filename of the currently executing script
$_SERVER['GATEWAY_INTERFACE'] Returns the version of the Common Gateway Interface (CGI) the server is using
$_SERVER['SERVER_ADDR'] Returns the IP address of the host server
$_SERVER['SERVER_NAME'] Returns the name of the host server (such as www.w3ii.com)
$_SERVER['SERVER_SOFTWARE'] Returns the server identification string (such as Apache/2.2.24)
$_SERVER['SERVER_PROTOCOL'] Returns the name and revision of the information protocol (such as HTTP/1.1)
$_SERVER['REQUEST_METHOD'] Returns the request method used to access the page (such as POST)
$_SERVER['REQUEST_TIME'] Returns the timestamp of the start of the request (such as 1377687496)
$_SERVER['QUERY_STRING'] Returns the query string if the page is accessed via a query string
$_SERVER['HTTP_ACCEPT'] Returns the Accept header from the current request
$_SERVER['HTTP_ACCEPT_CHARSET'] Returns the Accept_Charset header from the current request (such as utf-8,ISO-8859-1)
$_SERVER['HTTP_HOST'] Returns the Host header from the current request
$_SERVER['HTTP_REFERER'] Returns the complete URL of the current page (not reliable because not all user-agents support it)
$_SERVER['HTTPS'] Is the script queried through a secure HTTP protocol
$_SERVER['REMOTE_ADDR'] Returns the IP address from where the user is viewing the current page
$_SERVER['REMOTE_HOST'] Returns the Host name from where the user is viewing the current page
$_SERVER['REMOTE_PORT'] Returns the port being used on the user's machine to communicate with the web server
$_SERVER['SCRIPT_FILENAME'] Returns the absolute pathname of the currently executing script
$_SERVER['SERVER_ADMIN'] Returns the value given to the SERVER_ADMIN directive in the web server configuration file (if your script runs on a virtual host, it will be the value defined for that virtual host) (such as someone@w3ii.com)
$_SERVER['SERVER_PORT'] Returns the port on the server machine being used by the web server for communication (such as 80)
$_SERVER['SERVER_SIGNATURE'] Returns the server version and virtual host name which are added to server-generated pages
$_SERVER['PATH_TRANSLATED'] Returns the file system based path to the current script
$_SERVER['SCRIPT_NAME'] Returns the path of the current script
$_SERVER['SCRIPT_URI'] Returns the URI of the current page

PHP $ _REQUEST

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

ตัวอย่างด้านล่างแสดงแบบฟอร์มที่มีช่องใส่และปุ่มส่ง เมื่อผู้ใช้ส่งข้อมูลได้โดยคลิกที่ "ส่ง" ข้อมูลในแบบฟอร์มจะถูกส่งไปยังไฟล์ที่ระบุไว้ในแอตทริบิวต์การกระทำของ <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 ยังถูกนำมาใช้กันอย่างแพร่หลายในการส่งผ่านตัวแปร

ตัวอย่างด้านล่างแสดงแบบฟอร์มที่มีช่องใส่และปุ่มส่ง เมื่อผู้ใช้ส่งข้อมูลได้โดยคลิกที่ "ส่ง" ข้อมูลในแบบฟอร์มจะถูกส่งไปยังไฟล์ที่ระบุไว้ในแอตทริบิวต์การกระทำของ <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.php" และจากนั้นคุณสามารถเข้าถึงค่าของพวกเขาใน "test_get.php" กับ $ _GET

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

ตัวอย่าง

<html>
<body>

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

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

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