Teya Salat
17:39
20/05/24
Like để cập nhật nhiều truyện hay trên Facebook nhé
HotBạn muốn tải các game hay? Hãy truy cập:Vietnam.Teamobi.Com.Vntrang web TeaMobi đại lí vietnam phân phối bởi ©2Xinh™
Nếu bạn đã từng học qua bất cứ
ngôn ngữ lập trình nào, thì chắc
hẵn sẽ không xa lạ gì với mảng!
Còn nếu bạn là người mới vào nghề
như mình, thì đây là một khái niệm
mới, cũng khá khó đấy!
Mảng gồm có hai loại, mảng một
chiều và mảng nhiều chiều, trong
mãng nhiều chiều thông dụng nhất
ta dùng tới mảng hai chiều, vì thế
ta chỉ nói về mảng một chiều và
mảng hai chiều.
Mảng một chiều là dãy hữu hạn các
phần tử cùng kiểu. Mảng được đặt
tên và mỗi phần tử có một chỉ số.
Đề mô tả mảng một chiều cần xác
định kiểu của phần tử và cách đánh
số các phần tử của nó.Nhớ lại ví dụ
về biến mà mình môtả với bao
thuốc lá ở những bài nói về biến,
bây ta ví dụ trường hợp ta có 10 bao
thuốc là và bạn quyết định đặt tên
cho chúng là
bao1,bao2,....,bao8,bao9,bao10, với
mục đích là mỗi bao chứa một cái gì
đó, tới khi nào cần cái gì thì lấy ra
mà dùng.
Còn mảng, mảng chính là cả cây
thuốc lá!, đơn giản chỉ là một cây
thuốc là, bên trong có những bao
thuốc lá!giải thích cho dài dòng,
mảng 1 chiều đơn thuần là một tập
hợp các biến, và các biến có thứ tự
thay vì tên!tạo một mảng:
Ví dụ tạo một mảng đơn giản
<?php
$mang=array("a","b","c");
echo$mang[0]
?>
Thử in ra phần tử thứ nhất của
mảng(kết quả sẽ là a)Đây cũng là
một các để khia báo mảng, các phần
tử của mảng được đặt trong dấu
nháy kép và chúng được ngăn cách
nhau giữa dấu (,)
Còn đây là cách thứ hai, khá dễ
nhìn!
Bạn hãy khai báo mảng, không cần
khai báo nội dung bên trong:
$mang=array();
sau đó, khai báo từng phần tử bằng
cách này:
$mang[0]="a";
$mang[1]="b";
$mang[2]="c";
$mang[3]="d";
Bạn chú ý là trong PHP phần tử đầu
tiên của mảng có thứ tự là 0.
____________
Duyệt qua mảng với vòng lặp.
Với một mảng như thế này, ý tưởng
là chạy một vòng lặp từ đầu mảng
tới cuối mảng lấy ra giá trị.
Để tìm được độ dài của mảng php
cung cấp cho cúng ta một hàm, đó
là hàm count, php cung cấp rất
nhiều các hàm để làm việc với
mảng, cụ thể ta sẽ nói tới sau,bây
giờ chỉ quan tâm với cái hàm count
Hàm count() nhận vào một tham số
chính là mảng. Ví dụ tương ứng với
mảng $mang trên ta có:
<?php
$mang=array();
$mang[0]="a";
$mang[1]="b";
$mang[2]="c";
$mang[3]="d";
echocount($mang);
?>
kết quả in ra sẽ là 4 đi tiếp vào cái
vòng lặp, ở đây mình dùng vòng lặp
for
<?php
$mang=array();
$mang[0]="a";
$mang[1]="b";
$mang[2]="c";
$mang[3]="d";
for($i=0;$i<count($mang);
$i++)
{
echo$mang[$i]."<br />";
}
?>
Mảng kết hợp đơn giản là loại mảng
nhưng:
Chúng ta đi xem ví dụ:
<?php
$mang=array("a","b","c");
echo$mang[0]
?>
Đây là mảng cơ bản của chúng ta,và
khi lấy giá trị của một phần tử
trong mảng ra, ta tham chiếu tới nó
với khoá là giá trị thứ tự của nó.
Điểm khác biệt của mảng kết hợp là
cái khoá.
Ta có thể khai báo như sau:
<?php
$mang=array
("name"=>"Dũng","website"=>"
");
echo$mang["name"]
?>
kết quả sẽ là :Dũng ta cũng có
thể khai báo với cách khác như sau:
$mang=array();
$mang["name"]="Dũng";
$mang["website"]=" ";
Cách duyệt qua mạng này cũng hơi
khác với mảng một chiều. Để duyệt
mảng ta kết hợp vòng lặp while và
lis()=each()
Ví dụ để lấy cả khoá lẫn giá trị ta
làm như sau:
<?php
$mang=array
("name"=>"Dũng","website"=>"
");
while(list($key,$value)=each
($mang))
{
echo"<b>Khoá</b>: ".$key." <b>giá
trị</b>: ".$value."<br />";
}
?>
Còn ví dụ chỉ muốn lấy ra giá trị thì
chỉ khác ở mỗi dòng vòng lặp
while:while(list(,$value)=each
($mang))
bỏ đi biến $key, nhưng vẫn để
trước biến $value dấu ( , )
Giải thích nguyên lý làm việc như
sau:
Mỗi lần vòng lặp chạy each()sẽ lấy
ra lần lượt một cặp khoá và giá trị
tương ứng.
2 giá trị đó sẽ được gán lần lượt cho
biến ở vị trí thứ nhất và thứ hai đạt
trong list()
Vòng lặp dừng lại khi duyệt qua hết
mảng.
Có khá nhiều mảng dựng sẵn trong
các ngôn ngữ lập trình, php cũng
như vậy, và những mảng này rất
hữu ít trong khi làm việc.
Ở đây mình chạy đoạn mã để
truyxau6t1 các kháo và gái trị của
mảng $_SERVER một mảng khá hữu
ích:
<?php
$mang=$_SERVER;
while(list($key,$value)=each
($mang))
{
echo"<b>Khoá</b>: ".$key." <b>giá
trị</b>: ".$value."<br />";
}
?>
Đoạn mã này nằm trong filen1.php
đặt trong thư mục new, host hệ
điều hành Window, thư mục root
nằm ở
C:/Program Files/VertrigoServ/
www.
Kết quả là đây:
Mã nguồn:[Chọn]
Khoá: HTTP_HOST giá trị:
127.0.0.1:8080
Khoá: HTTP_USER_AGENT giá trị:
Mozilla/5.0 (Windows; U; Windows
NT 5.1; en-US; rv:1.9.1.1)
Gecko/20090715 Firefox/3.5.1
Khoá: HTTP_ACCEPT giá trị: text/
html,application/xhtml
+xml,application/xml;q=0.9,*/
*;q=0.8
Khoá: HTTP_ACCEPT_LANGUAGE giá
trị: en-us,en;q=0.5
Khoá: HTTP_ACCEPT_ENCODING giá
trị: gzip,deflate
Khoá: HTTP_ACCEPT_CHARSET giá trị:
ISO-8859-1,utf-8;q=0.7,*;q=0.7
Khoá: HTTP_KEEP_ALIVE giá trị: 300
Khoá: HTTP_CONNECTION giá trị:
keep-alive
Khoá: HTTP_COOKIE giá trị:
_csuid=49cdeeba4344116b;
SMFCookie956=a%3A4%3A%7Bi
%3A0%3Bs%3A1%3A%221
%22%3Bi%3A1%3Bs%3A40%3A
%228f96f02f0ffe510b7f35f7a8a78faf0b39a2b5e5
%22%3Bi%3A2%3Bi
%3A1435289626%3Bi%3A3%3Bi
%3A0%3B%7D; username=Nguy
%EAn;SMFCookie891=a%3A4%3A
%7Bi%3A0%3Bs%3A1%3A%223
%22%3Bi%3A1%3Bs%3A40%3A
%220a8eaaa533fa14a9e62e4df7da7094e41769f28c
%22%3Bi%3A2%3Bi
%3A1437102838%3Bi%3A3%3Bi
%3A0%3B%7D
Khoá: HTTP_CACHE_CONTROL giá trị:
max-age=0
Khoá: PATH giá trị: C:\WINDOWS
\system32;C:\WINDOWS;C:
\WINDOWS\System32\Wbem
Khoá: SystemRoot giá trị: C:
\WINDOWS
Khoá: COMSPEC giá trị: C:\WINDOWS
\system32\cmd.exe
Khoá: PATHEXT giá
trị:.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH
Khoá: WINDIR giá trị: C:\WINDOWS
Khoá: SERVER_SIGNATURE giá trị:
Apache/2.0.63 (Win32) PHP/5.2.6
Server at 127.0.0.1Port 8080
Khoá: SERVER_SOFTWARE giá trị:
Apache/2.0.63 (Win32) PHP/5.2.6
Khoá: SERVER_NAME giá trị: 127.0.0.1
Khoá: SERVER_ADDR giá trị: 127.0.0.1
Khoá: SERVER_PORT giá trị: 8080
Khoá: REMOTE_ADDR giá trị:
127.0.0.1
Khoá: DOCUMENT_ROOT giá trị: C:/
Program Files/VertrigoServ/www
Khoá: SERVER_ADMIN giá trị:
root@localhost
Khoá: SCRIPT_FILENAME giá trị: C:/
Program Files/VertrigoServ/www/
new/n1.php
Khoá: REMOTE_PORT giá trị: 3450
Khoá: GATEWAY_INTERFACE giá
trị:CGI/1.1
Khoá: SERVER_PROTOCOL giá trị:
HTTP/1.1
Khoá: REQUEST_METHOD giá trị: GET
Khoá: QUERY_STRING giá trị:
Khoá: REQUEST_URI giá trị: /new/
n1.php
Khoá: SCRIPT_NAME giá trị: /new/
n1.php
Khoá: PHP_SELF giá trị: /new/n1.php
Khoá: REQUEST_TIME giá trị:
1248597994
Khoá: argv giá trị: Array
Khoá: argc giá trị: 0
____________
Cái này ví dụ, để tham chiếu tới
PHP_SELF thì ta làm theo cách của
mãng kết hợp bình thường
$_SERVER['PHP_SELF']
Một số phần tử mà mình thấy rất
quan trọng:
PHP_SELF: trả về đường dẫn tới file
đang chạy, tính từ thư mục gốc
REQUEST_URI: tương tự như cái
PHP_SELF, nhưng nếu đường dẫn có
chứa tham số ( ?aaa=xxx...) thì nó
trả về luôn mấy cái tham số đó.
SCRIPT_FILENAME: trả về đường dẫn
đầy đủ
DOCUMENT_ROOT: trả về đường dẫn
tới thư mục www càu host
***
Chú ý: đường dẫn ở đây không phải
là đường dẫn với dạng tên miền
nha mà là đường dẫn kiểu như các
thư mục trong máy.