Ngắn gọn về cách sử dụng &,!,@ full, parent::__construct() (ok)
& dùng để thay đổi giá trị biến ở bên ngoài
Ví dụ 1:
Class
<?php
class A {
function foo(&$var) {
$this->result1 = &$var;
$this->result2 = $var;
$var++;
}
}
$var = 3;
$test = new A();
$test->foo($var);
echo $test->result1; // Result is 4
echo $test->result2; // Result is 3
?>Function
<?php
function changeString(&$sTest1, $sTest2, $sTest3) {
$sTest1 = 'changed';
$sTest2 = 'changed';
$sTest3 = 'changed';
};
$sOuterTest1 = 'original';
$sOuterTest2 = 'original';
$sOuterTest3 = 'original';
changeString($sOuterTest1, $sOuterTest2, $sOuterTest3);
echo ("sOuterTest1 is $sOuterTest1 <hr/>");
echo ("sOuterTest2 is $sOuterTest2 <hr/>");
echo ("sOuterTest3 is $sOuterTest3 <hr/>");
// sOuterTest1 is changed
// sOuterTest2 is changed
// sOuterTest3 is original
?>@ dùng để không gây ra cảnh báo
! Tạo ra một lỗi cố ý tức là nó ẽ trả về false
parent::__construct() kế thừa toàn bộ construct bên parent
Last updated
Was this helpful?