/ Lập Trình PHP

Các biến môi trường trong PHP

Tiếp tục loạt bài học PHP, hôm nay chúng ta cùng tìm hiểu các biến môi trường trong PHP và giá trị trong 1 cookie của ngôn ngữ lập trình này.

Các biến môi trường trong PHP
HTML Form : khi 1 form gắn với 1 file php qua phương thức POST
VD: 
    <form action=”foo.php3″ method=”post”>
Name: <input type=”text” name=”name”><br>
<input type=”submit”>
</form>

PHP sẽ tạo 1 biến $name bao gồm mọi giá trị trong truờng Name của Form.

PHP có thể hiểu được một mảng một chiều gồm các giá trị trong 1 form.

Vì vậy, bạn có thể nhóm những giá trị liên quan lại với nhau hoặc sử dụng đặc tính này để nhận các giá trị từ 1 đầu vào tuỳ chọn.(multi select input).

Khi tính chất track_vars được đặt trong cấu hình hoặc có chỉ dẫn <?php_track_vars?> . các giá trị được submit được lấy ra qua phương thức GET và POST có thể lấy từ 2 mảng toàn cục $HTTP_POST_VARS và $HTTP_GET_VARSIMAGE SUBMIT:

Khi dùng 1 image để thực hiện submit, có thể dùng tag như sau:
<input type=image src=”http://itexpress.edu.vn/wp-content/uploads/2016/02/image1.gif” name=”sub”>

Khi người dùng click chuột trên ảnh, form tương ứng sẽ được gửi tới server kèm theo 2 giá trị thêm vào : sub_x và sub_y. Những biến này sẽ lưu giữ toạ đọ mà người dùng đã click chuột trên ảnh. Người lạp trình có kinh nghiệm sẽ thấy rằng trên thực tế, trình duyệt gửi các giá trị có chu kỳ thời gian nhưng PHP đã tạo cảm giãc gần như việc gửi các giá trị đó là liên tục.

HTTP Cookies 
PHP hỗ trợ HTTP cookies theo định dạng của Netscape. Cookies file lưu giữ thông tin của các trình duyệt từ xa và qua đó có thể theo dõi hay nhận biết người sử dụng. Có thể dùng Cookies bằng hàm SetCookie(). Hàm này cần được gọi trước khi thông tin được gửi tới trình duyệt. Bất kỳ cookie nào gửi tới bạn từ máy khách (client) sẽ tự động chuyển thành dữ liệu của phương thức GET và POST.
Nếu bạn muốn có nhiều giá trị trong 1 cookie, chỉ cần thêm vào dấu [ ] với tên của cookie. 
VD :
        SetCookie (“MyCookie[]”, “Testing”, time()+3600);
Chú ý rằng cookie sẽ thay thế cho cookie cùng tên, trừ trườg hợp khác đường dẫn hoặc miền. 

Biến môi trường trong PHP

PHP tự động tạo biến cho các biến môi trường trong PHP như 1 biến bình thường
VD : 
        echo $HOME;  /* Shows the HOME environment variable, if set. */

 

Vì thông tin tới qua các phương thức GET, POST , Cookie cũng tự đông tạo các biến PHP, thỉnh thoảng bạn nên đọc 1 biến từ môi trường để chắc chắn rằng bạn có đúng version. Hàm getenv() và putenv() giúp bạn đọc và ghi với các biến môi trường.

Dấu chấm trong tên biến

Bình thường, PHP không thay đổi tên biến khi biến đó được truyền vào đoạn script. Tuy nhiên, nên chú ý rằng dáu chấm (.) không phải là một ký hiệu hợp lệ trong tên biến đối với PHP. Vì vậy, PHP sẽ tự động thay thế các dấu chấm bằng dấu gạch dưới.(_).