-Xin chào các bạn chắc chắn khi các bạn học đến ngôn ngữ C,Passcal điều nghe đến tham trị và tham chiếu(tham biến) .Vậy sự khác nhau giữa hai cái đó là gì mình cùng đi nghiên cứu nào!
-Đầu tin mình có một hàm như sau:
function phepCong($sothu1,$sothu2)
{
$ketqua=$sothu1+$sothu2;
return $ketqua;
}
$so1=5;
$so2=6;
$kq=phepCong($so1,$so2);
echo $kq;
Chú thích:Ở đây mình viết bằng ngôn ngữ php nhưng ngôn ngữ nào cũng vậy bản chất giống nhau
.Đầu tiên khi gọi hàm phepCong thì sẽ sinh ra hai bản sao của $so1 và $so2 và mọi tác động trong hàm thì chỉ tác động đến bản sao này mà không tác động trực tiếp đến $so1 và $so2.Để hình dung rõ hơn bạn có thể thử bằng cách sau:
function phepCong($sothu1,$sothu2)
{
$ketqua=$sothu1+$sothu2;
$sothu2=$sothu2*10;
return $ketqua;
}
$so1=5;
$so2=6;
$kq=phepCong($so1,$so2);
echo $kq;
echo '</br>'.$so2;
Kết quả:
11
6
như vậy mọi tác động trong hàm không tác động đến $so2 mà tác động đến bản sao của nó thôi.
==>Như vậy ở đây $sothu1 và $sothu2 gọi là tham trị
Gỉa sử ta sửa lại hàm như sau
function phepCong(&$sothu1,&$sothu2)
{
$ketqua=$sothu1+$sothu2;
$sothu2=$sothu2*10;
return $ketqua;
}
$so1=5;
$so2=6;
$kq=phepCong($so1,$so2);
echo $kq;
echo '</br>'.$so2;
thì điều gì sẽ xảy ra ta cùng xem kết quả.
Kết quả:
11
60
như vậy giá trị $so2 đã thay đỗi lần này mỗi tác động điều tác động đến chính $so2
==> Như vậy $sothu1 và $sothu2 lúc này là tham chiếu.
Nhận xét:
Tham trị : là giá trị của biến không thay đổi khi ra khỏi hàm
Tham chiếu : là giá trị của biến thay đổi khi ra khỏi hàm.
-Đầu tin mình có một hàm như sau:
function phepCong($sothu1,$sothu2)
{
$ketqua=$sothu1+$sothu2;
return $ketqua;
}
$so1=5;
$so2=6;
$kq=phepCong($so1,$so2);
echo $kq;
Chú thích:Ở đây mình viết bằng ngôn ngữ php nhưng ngôn ngữ nào cũng vậy bản chất giống nhau
.Đầu tiên khi gọi hàm phepCong thì sẽ sinh ra hai bản sao của $so1 và $so2 và mọi tác động trong hàm thì chỉ tác động đến bản sao này mà không tác động trực tiếp đến $so1 và $so2.Để hình dung rõ hơn bạn có thể thử bằng cách sau:
function phepCong($sothu1,$sothu2)
{
$ketqua=$sothu1+$sothu2;
$sothu2=$sothu2*10;
return $ketqua;
}
$so1=5;
$so2=6;
$kq=phepCong($so1,$so2);
echo $kq;
echo '</br>'.$so2;
Kết quả:
11
6
như vậy mọi tác động trong hàm không tác động đến $so2 mà tác động đến bản sao của nó thôi.
==>Như vậy ở đây $sothu1 và $sothu2 gọi là tham trị
Gỉa sử ta sửa lại hàm như sau
function phepCong(&$sothu1,&$sothu2)
{
$ketqua=$sothu1+$sothu2;
$sothu2=$sothu2*10;
return $ketqua;
}
$so1=5;
$so2=6;
$kq=phepCong($so1,$so2);
echo $kq;
echo '</br>'.$so2;
thì điều gì sẽ xảy ra ta cùng xem kết quả.
Kết quả:
11
60
như vậy giá trị $so2 đã thay đỗi lần này mỗi tác động điều tác động đến chính $so2
==> Như vậy $sothu1 và $sothu2 lúc này là tham chiếu.
Nhận xét:
Tham trị : là giá trị của biến không thay đổi khi ra khỏi hàm
Tham chiếu : là giá trị của biến thay đổi khi ra khỏi hàm.
RSS Feed
Twitter
08:14
Unknown


