1. Trang chủ
  2. » Thể loại khác

Session 2 PHP co ban

32 144 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 32
Dung lượng 1,09 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Session 2 PHP co ban tài liệu, giáo án, bài giảng , luận văn, luận án, đồ án, bài tập lớn về tất cả các lĩnh vực kinh tế...

Trang 1

PHP Cơ bản

Trang 2

Nội dung bài học

Trang 3

Mảng trong PHP

do vậy nó rất dễ để truy xuất.

v Mảng số (Numeric array) - Mỗi giá trị trong mảng được gắn với một

một giá trị số nguyên Mặc định giá trị đầu tiên được gắn key bắt đầu là 0

v Mảng kết hợp (Associative array)

key là một giá trị chuỗi

v Mảng nhiều chiều (Multidimensional array)

mảng một chiều

Cho phép lưu trữ nhiều giá trị dữ liệu trong các phần tử của mảng.

Mỗi phần tử của mảng được đánh chỉ mục bằng số hay bằng chuỗi,

Mỗi giá trị trong mảng được gắn với một key là một giá trị số nguyên Mặc định giá trị đầu tiên được gắn key bắt đầu là 0

– Mỗi giá trị trong mảng được gắn với một

(Multidimensional array) – Một mảng chứa một hoặc nhiều

Trang 5

Mảng số

v Để truy cập vào 1 phần tử, đặt chỉ số trong [ ]

v Có thể sử dụng chỉ số không liên tiếp

$a[0] = "Xin";

$a[] = "Chào"; // $a[1]

$a[] = "Bạn"; // $a[2]

Truy xuất phần tử trong mảng số

Để truy cập vào 1 phần tử, đặt chỉ số trong [ ]

$names = array("Peter","Quagmire","Joe");

" and " $names[2] " are " $names[0] "'s neighbors";

Có thể sử dụng chỉ số không liên tiếp

Có thể thêm phần tử vào cuối mảng bằng cách bỏ chỉ số:

Trang 8

Mảng nhiều chiều

$products = array(

array("a","b", 100), array("c","d", 200), array("e","f", 300) );

for($row=0; $row<3; $row++){

for($col=0; $col<3; $col++){

echo $products[$row][$col]."

} }

$families = array( "Griffin"=>array ("Peter",

"Quagmire"=>array( "Glenn"

"Brown"=>array("Cleveland", "Loretta", "Junior") ); echo "Is " $families['Griffin'][2] " a part of the Griffin family?";

Được coi là mảng của các mảng một chiều

Ví dụ tạo và sử dụng mảng hai chiều

Trang 9

v array_shift(tên_mảng): xóa phần tử đầu tiên tên_mảng.

v array_pop(tên_mảng): xóa phần tử cuối cùng của tên_mảng.

: trả về số phần tử của một mảngtrả về true nếu $biến là một mảng ngược lại trả về

sắp xếp mảng tăng dần

sắp xếp mảng giảm dần

sắp xếp mảng Associative array (tăng dần).

sắp xếp mảng Associative array (giảm).

in_array(giá trị tìm, $mảng): Tìm một giá trị có trong mảng không

: xóa phần tử đầu tiên tên_mảng

: xóa phần tử cuối cùng của tên_mảng

Trang 11

Một số hàm về mảng

<?php

$cart [0] = "Joe"; $cart [1] = "Peter"; $cart [2] = "Alex";

echo $value." = ".$cart[$value]."<br/>";

}

?>

array_keys($tên_mảng)trả về một mảng có chứa các key.

$cart [0] = "Joe"; $cart [1] = "Peter"; $cart [2] = "Alex";

as $value){

echo $value." = ".$cart[$value]."<br/>";

Trang 12

Hàm trong PHP

thường lặp đi lặp lại trong ứng dụng

n Để trả về giá trị, trong thân hàm sử dụng lệnh sau:

tên_hàm(giá_trị_1, giá_trị_2, , giá_trị_N);

function tên_hàm([$tham_số_1, $tham_số_2,…, $tham_số_N]) {

//các lệnh trong thân hàm

}

Hàm do người dùng định nghĩa cho phép bạn xử lý những tác vụ

thường lặp đi lặp lại trong ứng dụng

Để trả về giá trị, trong thân hàm sử dụng lệnh sau:

tên_hàm(giá_trị_1, giá_trị_2, , giá_trị_N);

tên_hàm([$tham_số_1, $tham_số_2,…, $tham_số_N]) {

Trang 13

Hàm trong PHP

v Tham số không có giá trị mặc định => bắt buộc phải truyền giá trị khi gọi hàm

v Tham số có giá trị mặc định: Khi gọi hàm, nếu không truyền giá trị cho tham số này, nó sử dụng giá trị mặc định làm giá trị

v Để truyền tham chiếu: thêm kí tự & vào trước tham số

function hi($a) { return $a "<br/>"; }

echo hi("heLLo");

function hi($a="Hello") { return $a; }

echo hi(); // Hello

function hi( & $a) { $a = $a + 1; }

$a = 1;

hi($a);

echo $a ; // result: a = 2;

Tham số không có giá trị mặc định => bắt buộc phải truyền giá trị khi gọi hàm

Tham số có giá trị mặc định: Khi gọi hàm, nếu không truyền giá trị cho tham số này, nó sử dụng giá trị mặc định làm giá trị

vào trước tham số

hi($a) { return $a "<br/>"; }

hi($a="Hello") { return $a; }

a) { $a = $a + 1; }echo $a ; // result: a = 2;

Trang 14

Hàm trong PHP

của một biến ở bên ngoài hàm mà không phải dùng đến tham số.

function birthday() {

}

Biến cục bộ: Là biến được khai báo bên trong một hàm.

, nếu bên trong hàm muốn truy xuất dữ liệu của một biến ở bên ngoài hàm mà không phải dùng đến tham số.

//Khai báo truy xuất tới biến toàn cục //biến có phạm vi cục bộ

Trang 15

Hàm trong PHP

n Hàm function_exist(func_name): dùng để kiểm tra sự tồn tại của

một hàm Trả về TRUE nếu hàm đã được định nghĩa ngược lại trả về FALSE.

echo $test; // False

dùng để kiểm tra sự tồn tại của một hàm Trả về TRUE nếu hàm đã được định nghĩa ngược lại trả về

$test = function_exists("hhh");

Trang 16

Phạm vi của biến trong PHP

v Có phạm vi trong toàn bộ chương trình

v Có thể truy xuất được từ bất cứ đâu trong chương trình

v Phải được khai báo tường minh với từ khóa

function birthday() {

}

Phạm vi của biến trong PHP

Có phạm vi trong toàn bộ chương trình

Có thể truy xuất được từ bất cứ đâu trong chương trình

Phải được khai báo tường minh với từ khóa global trong chương trình

//Khai báo truy xuất tới biến toàn cục // phạm vi toàn cục

//biến có phạm vi cục bộ

Trang 17

Hàm date() trong PHP

Hàm date(): được dùng để định dạng thời gian và/hoặc ngày tháng.

Bắt buộc Chỉ ra định dạng của timestamp

: Ngày của tháng (d: từ 01->31, j: từ 1->31): Thứ trong tuần (Sun, Mon,…; 0 (Chủ nhật), 1, 2,…)

>Dec; m: 1->12; F: January -> December): Năm (1999, 2003 hoặc 99, 03)

Tùy chọn Chỉ ra timestamp Mặc định là ngày giờ hiện tại

(format,[timestamp])

Trang 19

"seconds" Numeric representation of seconds

"minutes" Numeric representation of minutes

"hours" Numeric representation of hours

"mday" Numeric representation of the day of the month

"wday" Numeric representation of the day of the week

"mon" Numeric representation of a month

"year" A full numeric representation of a year, 4 digits

"yday" Numeric representation of the day of the year

"weekday" A full textual representation of the day of the week

Hàm date(): được dùng để định dạng thời gian và/hoặc ngày tháng.

$timestamp = time()])

0 to 59

0 to 59

0 to 23 Numeric representation of the day of the month 1 to 31 Numeric representation of the day of the week

0 (for Sunday) through 6 (for Saturday)

Trang 20

n explode ( string $delimiter , string $string

chuỗi, mỗi chuỗi con được tách ra từ $string

] ): Trả về chuỗi $str đã loại bỏ các kí tự trắng ] ): Trả về chuỗi $str đã loại bỏ các kí tự trắng ] ): Trả về chuỗi $str đã loại bỏ các kí tự trắng

$str với tất cả các kí tự chữ được chuyển

$str với tất cả các kí tự chữ được chuyển

$str được in hoa các kí tự đầu mỗi từ

$string [, int $limit ] ): trả về một mảng các

string $delimiter là giới hạn để tách

Trang 21

Hàm xử lý chuỗi

Nếu chỉ có một tham số, number được định dạng không có phần thập phân, nhưng

có dấu ‘,’ dùng để ngăn cách giữa các nhóm số – Nếu có hai tham số, number được định dạng có phần thập phân, kí tự chấm (.)

dùng để ngăn cách phần thập phân và kí tự phẩy(,) dùng ngăn cách giữa các nhóm số.

– Nếu dùng cả 4 tham số, number được định dạng: dùng $

dấu chấm (.) thập phân, dùng $thousands_seperator

ngăn cách giữa các nhóm số.

string $dec_seperator, string $thousands_seperator

string number_format ( float $number

dùng để dịnh dạng một số

Hàm có thể nhận 1, 2 hoặc 4 tham số (không có 3)

được định dạng không có phần thập phân, nhưng

có dấu ‘,’ dùng để ngăn cách giữa các nhóm số

được định dạng có phần thập phân, kí tự chấm (.) dùng để ngăn cách phần thập phân và kí tự phẩy(,) dùng ngăn cách giữa các nhóm

Nếu dùng cả 4 tham số, number được định dạng: dùng $dec_seperator thay cho

thousands_seperator thay cho dấu phấy (,) để

$number, int $num_decimal_place, thousands_seperator)

$number [, int $decimals = 0 ] )

Trang 23

Hàm xử lý chuỗi

($str2) bên trong một chuỗi khác ($str1).

lần tìm thấy đầu tiên Nếu không tìm thấy, nó sẽ trả về

n Ví dụ minh họa về việc tìm chuỗi "world" trong một chuỗi khác:

<?php

echo strpos("Hello world!","world");

?>

int strpos ($str1, $str2, [$offset=0])

Hàm strpos() được dùng để tìm kiếm một chuỗi con hoặc một ký tự ($str2) bên trong một chuỗi khác ($str1).

Nếu chuỗi con hoặc ký tự được tìm thấy, hàm này sẽ trả về vị trí của lần tìm thấy đầu tiên Nếu không tìm thấy, nó sẽ trả về FALSE.

Ví dụ minh họa về việc tìm chuỗi "world" trong một chuỗi khác:

("Hello world!","world");

($str1, $str2, [$offset=0])

Trang 24

Làm việc với HTML FORM

v Được sử dụng để truyền dữ liệu do người dùng nhập từ client tới server

Làm việc với HTML FORM

Được sử dụng để truyền dữ liệu do người dùng nhập từ client tới server

Quá trình xử lý yêu cầu trên Web Server

Trang 25

Làm việc với HTML FORM

v Chỉ rõ đích xử lý dữ liệu trong thuộc tính

v Chỉ rõ phương thức gửi dữ liệu từ client tới server là

tính method

<FORM name=" " action="XulyDangNhap.php" method="post"

Tên đăng nhâp: <br>

<INPUT type="text" name=‘txtTendangnhap’><br>

Mật khẩu:

<INPUT type="password" name=‘txtMatkhau’><br>

<INPUT type="submit" name=‘btnSubmit’ value="Submit">

<INPUT type="reset" name=‘btnReset’ value="Submit">

</FROM>

Làm việc với HTML FORM

Chỉ rõ đích xử lý dữ liệu trong thuộc tính action

Chỉ rõ phương thức gửi dữ liệu từ client tới server là POST hay GET trong thuộc

Dữ liệu trong form bao gồm các INPUT

action="XulyDangNhap.php" method="post">

<INPUT type="text" name=‘txtTendangnhap’><br>

<INPUT type="password" name=‘txtMatkhau’><br>

<INPUT type="submit" name=‘btnSubmit’ value="Submit">

<INPUT type="reset" name=‘btnReset’ value="Submit">

Trang 26

Phương pháp gửi dữ liệu POST và GET trong PHP

server là:

chương trình URL encoding Thông tin gửi đi được sắp xếp theo cặp name/value ghép với nhau bởi dấu = và các cặp khác nhau được

phân cách nhau bởi dấu &

name1=value1&name2=value2&name3=value3

Phương pháp gửi dữ liệu POST và GET trong PHP

Có hai cách trình duyệt phía client có thể gửi thông tin cho web

Trước khi trình duyệt gửi thông tin đi, nó mã hóa thông tin bằng

chương trình URL encoding Thông tin gửi đi được sắp xếp theo cặp name/value ghép với nhau bởi dấu = và các cặp khác nhau được

name1=value1&name2=value2&name3=value3

Trang 27

Gửi dữ liệu theo phương pháp GET

cuối của URL yêu cầu trang Thông tin gửi đi và URL phân cách bởi kí tự ?

v Phương pháp GET giới hạn số kí tự tối đa có thể gửi là 1024.

v Không bao giờ dùng phương pháp GET để gửi mật khẩu hoặc thông tin nhạy cảm khác tới server.

v Không thể dùng phương pháp GET để gửi dữ liệu dạng nhị phân, như các hình ảnh, tài liệu word tới server.

v Có thể dùng biến môi trường QUERY_STRING

xuất thông tin gửi đi.

v PHP cung cấp mảng kết hợp $_GET để truy xuất tất cả thông gửi tới Web Server theo

phương thức GET

http://www.test.com/index.htm?name1=value1&name2=value2

Gửi dữ liệu theo phương pháp GET

Với phương pháp GET thông tin đã mã hóa được gửi đi bằng cách đính kèm vào

cuối của URL yêu cầu trang Thông tin gửi đi và URL phân cách bởi kí tự ?

Phương pháp GET giới hạn số kí tự tối đa có thể gửi là 1024.

Không bao giờ dùng phương pháp GET để gửi mật khẩu hoặc thông tin nhạy cảm khác Không thể dùng phương pháp GET để gửi dữ liệu dạng nhị phân, như các hình ảnh, tài

QUERY_STRING ($_SERVER['QUERY_STRING']) để truy

để truy xuất tất cả thông gửi tới Web Server theo

http://www.test.com/index.htm?name1=value1&name2=value2

Trang 28

Gửi dữ liệu theo phương pháp GET

Gửi dữ liệu theo phương pháp GET

Trang 29

Gửi dữ liệu theo phương pháp POST

headers Thông tin được mã hóa như phương pháp GET và đặt vào

header gọi là QUERY_STRING.

v Phương pháp POST không giới hạn kích thước dữ liệu được gửi đi

thức HTTP Bằng cách sử dụng Secure HTTP bạn có thể đảm bảo thông tin gửi

đi được an toàn

Server theo phương thức GET

Gửi dữ liệu theo phương pháp POST

Phương pháp POST truyền dữ liệu tới server thông qua HTTP

headers Thông tin được mã hóa như phương pháp GET và đặt vào

Phương pháp POST không giới hạn kích thước dữ liệu được gửi đi

Phương pháp POST được dùng cho gửi ở dạng ASCII và cả dạng nhị phân

Dữ liệu được gửi thông qua HTTP header do đó sự bảo mật phụ thuộc vào giao thức HTTP Bằng cách sử dụng Secure HTTP bạn có thể đảm bảo thông tin gửi

$_POST để truy xuất tất cả thông gửi tới Web

Trang 30

Gửi dữ liệu theo phương pháp POST

Gửi dữ liệu theo phương pháp POST

$_POST[‘txtMatkhau’];

XulyDangNhap.php

Trang 31

Biến $_REQUEST

phương thức POST, GET

chứa dữ liệu của cả $_GET, $_POST và $_COOKIE

Có thể được dùng để lấy dữ liệu được gửi từ client bằng cả hai

Ngày đăng: 21/01/2018, 11:14

TỪ KHÓA LIÊN QUAN

w