Tải bản đầy đủ (.docx) (118 trang)

Nghiên cứu Joomla và xây dựng website tin tức khoa công nghệ thông tin theo mô hình MVC Joomla

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.41 MB, 118 trang )

MỤC LỤC
1
DANH MỤC CÁC BẢNG
2
DANH MỤC CÁC HÌNH VẼ
3
LỜI CẢM ƠN
Sau thời gian thực hiện làm đề tàiđến nay nhóm đã hoàn thành đề tài của mình. Để có
được kết quả như hôm nay, nhóm thực hiện đề tài đã nhận được rất nhiều sự quan tâm,
giúp đỡ và chỉ đạo nhiệt tình của các thầy, cô trong khoa công nghệ thông tin.
Đặc biệt nhóm thực hiện đề tài xin gửi lời cảm ơn chân thành nhất tới thầy “Lê
Quang Lợi”. Thầy là người đã tận tình chỉ bảo, chia sẻ cho nhóm những kiến thức bổ ích
hướng dẫn động viên trong suốt thời gian qua, tạo mọi điều kiện tốt nhất cho nhóm trong
quá trình thực hiện.
Mặc dù nhóm thực hiện đề tài đã rất cố gắng trong quá trình làm đề tài song đề tài của
nhóm không thể tránh khỏi những thiếu sót, hạn chế. Nhóm thực hiện đề tài rất mong
nhận được sự đóng góp chân thành từ các thầy, cô và các bạn để đề tài của nhóm được
hoàn thiện hơn.
Nhóm thực hiện đề tài xin chân thành cảm ơn!
Hưng Yên, ngày 27 tháng 11 năm 2014
Sinh viên thực hiện
Nguyễn Thị Như
Nguyễn Thị Thuỷ
4
PHẦN I: MỞ ĐẦU
1. Lý do chọn đề tài
 Tìm hiểu công nghệ là hành trang tốt nhất để chuẩn bị kiến thức cho chúng em sau
khi ra trường. Joomla được viết bằng ngôn ngữ PHP, kết nối cơ sở dữ liệu MYSQL
cho phép người sử dụng có thể xuất bản nội dung của họ lên Internet. Ứng dụng
của Joomla là tạo ra giao diện thân thiện, hiệu ứng đẹp cho các trang web. Để phục
vụ quá trình nghiên cứu và phát triển mô hình MVC Joomla nhóm đã ứng dụng mô


hình này vào quá trình xây dựng đề tài : “Nghiên cứu Joomla và xây dựng
website tin tức khoa công nghệ thông tin theo mô hình MVC Joomla”.
 Qua quá trình tìm hiểu chúng em đã hoàn thành bản báo cáo với nội dung sau:
Phần I: Mở đầu
Phần II: Nội dung
I. Tìm hiểu công nghệ
 Chương 1: Tổng quan về PHP
 Chương 2: Tìm hiểu về MySQL
 Chương 3:Joomla và ứng dụng MVC trong Joomla
II. Phân tích thiết kế hệ thống
 Chương 1: Khảo sát, xác định yêu cầu và phân tích hệ thống
 Chương 2: Phân tích thiết kế hệ thống theo UML
 Chương 3: Phân tích thiết kế CSDL
 Chương 4: Thiết kế và mô tả giao diện của hệ thống
Phần III: Kết luận
Phần IV: Tài liệu tham khảo
2. Đối tượng nghiên cứu
 Ngôn ngữ lập trình PHP, ứng dụng mô hình MVC Joomla, hệ cơ sở dữ liệuMySQL.
 Website Tin tức của khoa CNTT trường Đại học sư phạm kĩ thuật Hưng Yên
5
 Công cụ xây dựng phần mềm: Visual Studio 2008, WampServer2.0c, Joomla 1.6.3.
3. Giới hạn và phạm vi nghiên cứu
Tìm hiểu ngôn ngữ lập trìnhPHP ứng dụng MVC Joomla và xây dựng website tin tức
khoa CNTT trường Đại học sư phạm kĩ thuật Hưng Yên.
4. Mục đích nghiên cứu
 Xây dựng tài liệu giúp tìm hiểu về ngôn ngữ lập trình PHP ứng dụng MVC Joomla
 Xây dựngWebsite tin tức khoa CNTT trường Đại học sư phạm kĩ thuật Hưng Yên.
5. Nhiệm vụ nghiên cứu
 Tìm hiểu và nghiên cứu ngôn ngữ lập trình PHP, Joomla và mô hình MVC Joomla,
hệ CSDL MySQL.

 Tìm hiều về Website tin tức để xây dựng Website tin tức cho khoa CNTT trường
Đại học sư phạm kĩ thuật Hưng Yên.
 Thiết kế Website tin tức cho khoa CNTT sử dụng ngôn ngữ lập trình PHP ứng dụng
MVC Joomla.
6. Phương pháp nghiên cứu
 Tìm hiểu hết tổng hợp kiến thức chung của PHP, MySQL, Joomla
 Nghiên cứu sâu vào những kiến thức cụ thể về Joomla và ứng dụng MVC Joomla
để xây dựng Website tin tức khoa CNT
7. Ý nghĩa lý luận và thực tiễn của đề tài
 Qua việc tìm hiểu đã giúp em biết thêm kiến thức một ngôn ngữ lập trình mới với
nhiều tính năng nổi trội để xây dựng một trang Web.
 Xây dựng website tin tức khoa công nghệ thông tin trường ĐHSPKT Hưng Yên.
 Đề tài này sẽ tiếp tục phát triển lên đồ án tốt nghiệp.
6
PHẦN II: NỘI DUNG
I. TÌM HIỂU CÔNG NGHỆ
Chương 1: Tổng quan về lập trình PHP cơ bản
1. Tổng quan về PHP
I.1. Giới thiệu PHP
 PHPviết tắt của từ Personal Home Page
 PHP là một ngôn ngữ lập trình kịch bản trên Server được dùng để phát triển các ứng
dụng viết cho máy chủ, mã nguồn mở
 Cú pháp của ngôn ngữ lập trình PHP giống cú pháp của C và Java.
I.2. Đặc điểm của PHP trong lập trình web
 Tốc độ nhanh, dễ sử dụng: PHP cung cấp các tính năng mạnh mẽ để thực hiện ứng
dụng Web một cách nhanh chóng.
 Chạy trên nhiều điều hành: PHP có thể chạy trên nhiều điều hành như:
WindowsNT/2000/2003, Unix với sự hỗ trợ của IIS và Apache, Netscape, Roxen…
 Truy cập bất kì loại CSDL nào hiện nay như: SQL Server, Ms Access, MySQL,
mSQL, Oracel, PostgreSQL, InterBase, Sysbase.

 Luôn được cải tiến và cập nhật: PHP đã được cải tiến từ PHP đầu tiên năm 1995 đến
nay đã cho ra đời đến PHP 6. PHP4 được phổ biến rộng rãi, nó giúp cho việc bổ
sung số lượng lớn các hàm chức năng một cách dễ dàng.
7
I.3. Quy trình hoạt động
Hình 1: Kiến trúc của PHP
2. Cú pháp cơ bản trong PHP
2.1. Cấu trúc cơ bản
 Cách 1 : Cú pháp chính: <?php Mã lệnh PHP ?>
 Cách 2: Cú pháp ngắn gọn: <? Mã lệnh PHP ?>
 Cách 3: Cú pháp giống với ASP: <% Mã lệnh PHP %>
 Cách 4: Cú pháp bắt đầu bằng script: <script language=php>
2.2. Xuất giá trị ra trình duyệt
Để xuất dữ liệu ra trình duyệt chúng ta có những dòng cú pháp sau :
 Echo "Thông tin";
 Printf "Thông tin";
8
Trong đó thông tin bao gồm : biến, chuỗi, hoặc lệnh HTML ….
Ví dụ minh họa:
<?php
Echo “Hello word”
Printf “<br><font color=red> Xin chào </font>”;
?>
2.3. Biến, hằng, chuỗi và các giá trị
a. Biến trong PHP
 Biến được xem là vùng nhớ dữ liệu tạm thời, giá trị có thể thay đổi được. Biến được
bắt đầu bằng ký hiệu "$", theo sau là một từ, một cụm từ nhưng phải viết liền hoặc
có gạch dưới.
 Một biến là hợp lệ khi thỏa mãn các yếu tố :
• Tên của biến phải bắt đầu bằng dấu gạch dưới và theo sau là các ký tự.

• Tên của biến không được phép trùng với các từ khóa của PHP.
 Một số biến đã được tạo sẵn
• Argv: Mảng tham số truyền cho script. Khi đoạn script chạy bằng dòng lệnh tham
số này sẽ được dùng giống như C để truy nhập các tham số trên dòng lệnh.
• Argc : số các tham số được truyền. Dùnggiống với Argv;
• PHP_SELF : tên của đoạn mã script đang thực hiện. Nếu PHP đang được chạy từ
dòng lệnh thì tham số này không có giá trị.
• HTTP_COOKIE_VARS: một mảng các giá trị được truyền tới script hiện tại bằng
HTTP cookie. Chỉ có tác dụng nếu "track_vars" trong cấu hình được đặt hoặc chỉ
dẫn <?php_track_vars?>.
9
• HTTP_GET_VARS: Mảng các giá trị truyền tới script thông qua phương thức
HTTP GET. Chỉ có tác dụng nếu "track_vars" trong cấu hình được đặt hoặc chỉ
dẫn <?php_track_vars?>.
b. Hằng trong PHP
 Hằng trong PHP được định nghĩa bởi hàm define theo cú pháp:
define (string tên_hằng, giá_trị_hằng ).
 Cũng giống với biến, hằng được xem là hợp lệ thì chúng phải đáp ứng 1 số yếu tố :
• Hằng không có dấu "$" ở trước tên.
• Hằng có thể truy cập bất cứ vị trí nào trong mã lệnh
• Hằng chỉ được phép gán giá trị duy nhất 1 lần.
• Hằng thường viết bằng chữ in để phân biệt với biến
 Ví dụ minh họa:
<?
define (“C”, “COMPANY”);
define (“YELLOW”, “#ffff00”);
echo “Gia tri cua C la”. C;
>
c. Chuỗi trong PHP
 Chuỗi là một nhóm các kí tự, số, khoảng trắng, dấu ngắt được đặt trong các dấu

nháy. Để tạo 1 biễn chuỗi, chúng ta phải gán giá trị chuỗi cho 1 biến hợp lệ.
 Ví dụ: $fisrt_name= "Nguyen";
$last_name= ‘Van A’;
d. Phạm vi giá trị
10
 PHP coi 1 biến có một giới hạn. Để xác định một biến tòan cục (global) có tác dụng
trong một hàm , ta cần khai báo lại. Nếu không giá trị của biến sẽ được coi như là
cục bộ trong hàm.
 Ví dụ minh họa:
$a=1; $b=2;
Function Sum ()
{global $a, $b;
$b = $a + $b;
}
Sum ();
echo $b;
e. Các giá trị bên ngòai phạm vi 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">
<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.(multiselect input)
2.4. Kiểu dữ liệu trong PHP
 Các kiểu dữ liệu khác nhau chiếm các lượng bộ nhớ khác nhau và có thể được xử lý
theo cách khác nhau khi chúng được theo tác trong 1 script.

 Trong PHP chúng ta có 6 kiểu dữ liệu chính như sau :
11
Kiểu dữ liệu Mô tả Ví dụ
Integer Kiểu số nguyên 10
Double Kiểu số thực 5,53
String Kiểu chuỗi “Hello”
Boolean Giá trị true hoặc false True or False
Object Đối tượng trong PHP
Array Mảng trong PHP
Bảng 1: Kiểu dữ liệu trong PHP
2.5. Các toán tử trong PHP
a. Toán tử gán
 Chúng ta đã từng tiếp xúc với toán tử này bởi việc khởi tạo 1 biến. Toán tử gán lấy
giá trị của toán hạng bên phải gán nó vào toán hạng bên trái.
 Ví dụ: $name = "Johny Nguyen";
b. Toán tử số học
Là dạng phép tính giản đơn cộng, trừ, nhân, chia trong số học. Ngoài ra còn có phép
chia lấy dư (%). Được sử dụng để lấy ra đơn vị dư của 1 phép toán
Toán tử Mô tả Ví dụ Kết quả
+ Cộng hai số hạng 10+8 18
- Trừ hai số hạng 10-8 2
* Nhân hai số hạng 10*8 80
/ Chia hai số hạng 10/3 3.333333333333
% Trả về số dư 10%3 1
Bảng 2: Các toán tử số học trong PHP
c. Toán tử so sánh
Là toán tử được sử dụng để thực hiện các phép toán so sánh giữa hai số hạng. Chi tiết,
xem bảng bên dưới.
Phép toán Tên Mô tả Ví dụ
= = Bằng Hai số hạng bằng nhau $a==5

!= Không bằng Hai số hạng không bằng nhau $a!=5
=== Đồng nhất Hai số bằng nhau và cùng kiểu $a===5
> Lớn hơn Vế trái lớn hơn vế phải $a>5
>= Lớn hơn hoặc bằng Vế trái lớn hơn hoặc bằng vế phải $a>=5
< Nhỏ hơn Vế trái nhỏ hơn vế phải $a<5
12
<= Nhỏ hơn hoặc bằng Vế trái nhỏ hơn hoặc bằng vế phải $a<=5
Bảng 3: các toán tử so sánh trong PHP
d. Toán tử logic
 Toán tử logic là các tổ hợp các giá trị boolean.
 Ví dụ: toán tử or trở về true nếu toán tử trái hoặc toán tử phải là true.
 Ta có bảng các toán tử như sau:
Toán tử Tên Trả về True nếu Ví dụ Kết quả
|| Or Vế trái hoặc vế phải là true True || false True
Or Or Vế trái hoặc vế phải là true True || false True
Xor Xor Vế trái hoặc vế phải là true nhưng
không phải cả hai
True || true False
&& And Vế trái và vế phải là true True && false False
And And Vế trái và vế phải là true True && false False
! Not Không phải true !true false
Bảng 4: Các toán tử logic trong PHP
13
e. Toán tử kết hợp:
Khi tạo mã PHP, ta thấy cần phải tăng hoặc giảm lượng biến một số nguyên nào đó.
Điều này sẽ thực hiện khi ta đếm 1 giá trị nào đó trong vòng lặp.
Bảng 5: Các toán tử kết hợp trong PHP
2.6. Các biểu thức cơ bản trong PHP
a. Biểu thức điều kiện
 Là biểu thức dùng kiểm tra 1 sự kiện. Nếu chúng thỏa điều kiện đó thì sẽ thực thi

một hành động. Ngược lại sẽ là một hành động khác.
 Cú pháp: If(điều kiện) {hành động}
 Ví dụ minh họa:
<?php
$a=5;
$b=7;
if ( $a < $b)
{
echo “Bien A co gia tri nho hon bien B”;
14
}
else
{
echo “Bien A co gia tri lon hon bien B”;
}
b. Vòng lặp trong PHP
 While()
• Phép lặp này yêu cầu phải thỏa mãn điều kiện thì mới thực thi được vòng lặp
• Cú pháp:While(điều kiện){ Khối lệnh-công việc}
• Ví dụ:
<?php
$a=5;
While($a<10)
{
echo “Gia tri $a la ”;
$a++;
}
?>
 Do while()
15

• Phép lặp này sẽ thực thi hành động ít nhất là một lần. Sau đó mới tiến hành kiểm
tra điều kiện.
• Cú pháp:Do {Khối lệnh-công việc}while(điều kiện)
• Ví dụ:
<?php
$a=5;
$b=7;
do
{
echo “ day la gia tri cua $a”;
$a++;
}while ($a>6)
?>
c. Vòng lặp for()
 Phép lặp này là phép toán gộp các tham số. Giúp người lập trình giảm thiểu thời
gian phải khai báo biến và các tham số khi thực thi việc lặp dữ liệu.
 Cú pháp: For( giá trị ; điều kiện ; biến tăng hoặc giảm){ Công việc }
 Ví dụ:
16
<?php
$a=2;
for ( $i=1; $i<=10; $i++)
{
echo “$a %$i=” +$a*$i+ “<br>”;
}
?>
d. Biểu thức switch case:
 Là biểu thức sử dụng để giảm thiểu quá trình xử lý dữ liệu nếu có quá nhiều phép
toán if else.
 Cú pháp: Switch(biến) {

Case giá trị 1: Hành động; Break;
…………
Case giá trị N: Hành động; Break;
Default: Hành động; Break;
}
 Ví dụ:
<?php
$a=5;
$b=7;
switch( $a )
{
17
case 1: echo “day la gia tri $a”; break;
case 2: echo “day la gia tri $a”; break;
case 3: echo “day la gia tri $a”; break;
case 4: echo “<font color=red> day la gia tri $a</font>”; break;
default: echo “khong co gia tri phu hop”; break;
}
?>
3. Hàm trong PHP
3.1. Quy tắc xây dựng hàm
Function tên_hàm(danh sách các đối số)
{Thân hàm}
Trong đó:
• Trong hàm có thể có hàm khác.
• Hàm có thể có gí trị trả về hoặc không
• Các câu lệnh được quyền gọi bất kì hàm nào đã được khai báo và định nghĩa
3.2. Biến toàn cục và biến cục bộ
 Các biến được sử dụng trong than của hàm là biến cục bộ. Biến trong than hàm
không làm thay đổi giá trị của biến ở ngoài hàm. Muốn làm thay đổ giá trị của biến

ngoài ta cần khai báo global trước biến đó trong than hàm.
 VD:
Sposition = “m”;
Function change_pos()
{
18
GOLOBALS[Sposition] = “s”;
}
Change_pos();
echo (“Sposition”);
3.3. Cookie và Session
3.3.1. Cookie
a. Cookie là gì?
 Cookie là một đoạn dữ liệu được ghi vào đĩa cứng hoặc bộ nhớ của máy người sử
dụng. Nó được trình duyệt gởi ngược lên server mỗi khi browser tải một trang web
từ server.
 Những thông tin được lưu trữ trong cookie hoàn toàn phụ thuộc vào website trên
server. Mỗi website có thể lưu trữ những thông tin khác nhau trong cookie.
 Cookie được tạo ra bởi website và gởi tới browser, do vậy 2 website khác nhau (cho
dù cùng host trên 1 server) sẽ có 2 cookie khác nhau gởi tới browser. Ngoài ra, mỗi
browser quản lý và lưu trữ cookie theo cách riêng của mình, cho nên 2 browser
cùng truy cập vào 1 website sẽ nhận được 2 cookie khác nhau.
b. Thiết lập cookie:
 Cú pháp: Setcookie("tên cookie","giá trị", thời gian sống)
Trong đó: Tên cookie là tên mà chúng ta đặt cho phiên làm việc.
Giá trị là thông số của tên cookie.
 Ví dụ: Setcookie("username","admin", time() +3600)
 Chú ý: Kịch bản cookie đặt trên mọi giá trị trả vềgồm thẻ HTML và lệnh echo.
c. Sử dụng cookie
19

 Cú pháp: $_COOKIE["tên cookies"]
Trong đó: Tên cookie là tên mà chúng ta thiết lập phía trên.
 Ví dụ:
<?php
setcookie(“name”, “Thuy”, time()+3600);
?>
<html>
<head><title> Trang 1</title></head>
<body>
<a href=cookie2.php> Click</a>
</body>
</html>
Tiếp tục tạo trang cookie2.php với nội dung sau:
<html>
<head><title> Trang 2</title></head>
<body>
<?php>
echo “ten cua ban la<b> “.$_COOKIE[‘name’].”</b>”;
?>
</body>
</html>
d. Hủy Cookie:
 Để hủy 1 cookie đã được tạo ta có thể dùng 1 trong 2 cách sau:
• Cú pháp: setcookie("Tên cookie"). Gọi hàm setcookie với chỉ duy nhất tên cookie
mà thôi
• Dùng thời gian hết hạn cookie là thời điểm trong quá khứ.
20
 Ví dụ: Tiếp tục tạo trang cookie3.php với nội dung sau:
<?php
setcookie(“name”, “Thuy”, time()-360);

?>
<html>
<head><title> Trang 1</title></head>
<body>
<a href=cookie2.php> Click</a>
</body>
</html>
3.3.2. Session
a. Sesion là gì?
Một cách khác quản lý người sử dụng là session. Session được hiểu là khoảng thời
gian người sử dụng giao tiếp với 1 ứng dụng. Một session được bắt đầu khi người sử
dụng truy cập vào ứng dụng lần đầu tiên, và kết thúc khi người sử dụng thoát khỏi ứng
dụng. Mỗi session sẽ có được cấp một định danh (ID) khác nhau và nội dung được lưu
trong thư mục thiết lập trong file php.ini (tham số session.save_path).
b. Thiết lập session
 Cú pháp: session_start()
 Chú ý:
• Đoạn code này được nằm trên các kịch bản HTML hoặc những lệnh echo, printf.
21
• Để thiết lập 1 giá trị session, ngoài việc cho phép bắt đầu thực thi session. Chúng
ta còn phải đăng ký 1 giá trị session. Để tiện cho việc gán giá trị cho session đó.
Ta có cú pháp: session_register("Name")
 Ví dụ:
<?php
Session_start();
Session_register(“username”);
?>
c. Sử dụng giá trị của session
 Cú pháp: $_SESSION["name"]
Với “Name” là tên mà chúng ta sử dụng hàm session_register("name") để khai báo.

 Ví dụ: Tạo trang session.php với nội dung sau:
<?php
Session_start();
Session_register(“username”);
?>
<html>
<head>
<title> Trang 1</title></head>
<body>
<a href=cookie2.php> Click</a>
</body>
</html>
Tạo trang session2.php với nội dung sau:
22
<?
Session_start();
?>
<html>
<head><title> Trang 2</title></head>
<body>
<?php>
echo “ten cua ban la<b> “.$_COOKIE[‘name’].”</b>”;
?>
</body>
</html>
d. Hủy bỏ session
 Để hủy bỏ giá trị của session ta có những cách sau:
session_destroy() // Cho phép hủy bỏ toàn bộ giá trị của session
session_unset()// Cho phép hủy bỏ session .
 Ví dụ: Tạo trang session3.php với nội dung sau:

<?php
Session_start();
Session_destroy(“username”);
?>
<html>
<head>
<title> Trang 1</title></head>
<body>
<a href=cookie2.php> Click</a>
</body>
</html>
23
3.3.3. Sử dụng kết hợp cookie với session
 Để xem nội dung của các cookie đã được thiết lập bởi session ta sử dụng hàm:
Session_get_cookie_params()
 Để thiết lập các tham số cho session cookie ta dung hàm:
Void session_set_cookie_params(int lifetime[, string path[, string domain]])
3.4. Lớp và đối tượng
 Class là tập hợp các biến và hàm làm việc với các biến này.
 Một lớp có định dạng như sau:
<?php
class Cart {
var $items;
function add_item ($artnr, $num) {
$this->items[$artnr] += $num;
}
function remove_item ($artnr, $num)
{if ($this->items[$artnr] > $num)
{$this->items[$artnr] -= $num;
return true;

}
else {
return false;
}
}
}
?>
24
 Lớp Cart là một kiểu dữ liệu, vì vậy bạn có thể tạo một biến có kiểu này với toán tử
new
VD:$cart = new Cart;
$cart->add_item("10", 1);
 Lớp có thể được mở rộng bằng những lớp khác. Lớp mới thu được có tất cả những
biến và hàm của các lớp thành phần. Thực hiện việc thừa kế nàybằng từ khoá
"extends". Chú ý : kế thừa nhiều lớp một lúc không được chấp nhận.
Ví dụ:
class Named_Cart extends Cart
{
var $owner;
function set_owner ($name)
{
$this->owner = $name;
}
}
 Các hàm khởi tạo của lớp được gọi tự động khi có toán tử new. Tuy nhiên, các
hàmkhởi tạo của lớp cha sẽ không được gọi khi hàm khởitạo của lớp con được gọi.
3.5. Tham chiếu
 Tham chiếu trong PHP là lấy cùng một giá trị bằng nhiều tên biến khác nhau. Khác
với con trỏ trong C, tham chiếu là một bảng cácbí danh.
 Chú ý : trong PHP, tên biến và nội dung của biến là khác nhau. Vì vậy, cùng một nội

dung có thể có nhiều tên khác nhau. Tham chiếu PHP cho phép bạn tạo 2 biến có
cùng nội dung.
VD :$a = & $b; > $a, $b trỏ tới cùng một giá trị. Tham chiếu truyền giá trị bằng
tham chiếu. Thực hiện việc này bằng cách tạo một hàm cục bộ và truyền giá trị
được tham chiếu
VD:
25

×