DR.HTML
شنبه 10 خرداد 1393, 20:07 عصر
دوستان یه سوال خواستم بپرسم اونم درمورد کد زیره که چرا این نتیجرو چاپ میکنه (مثال سایت php.net )
<?php
class SimpleClass{
}
$instance = new SimpleClass();
$assigned = $instance;
$reference =& $instance;
$instance->var = '$assigned will have this value';
$instance = null; // $instance and $reference become null
var_dump($instance);
echo "</br>";
var_dump($reference);
echo "</br>";
var_dump($assigned);
?>
مگه قانونا کد خط به خط از بالا اجرا نمیشه ؟
اینجا
$assigned = $instance;
$reference =& $instance;
اومده برابر قرار داده یکی یه کپی کامل یکیش مقدارشو
خوب پایینتر اومده
$instance->var = '$assigned will have this value';
$instance = null;
تغیر داده مقادیر ابجکت اصلیو حالا سوالم اینه اون متغیرهای قبلی قبل از اینا مقدار دهی شدن چرا بازم مقدارشون تغیر میکنه ؟
<?php
class SimpleClass{
}
$instance = new SimpleClass();
$assigned = $instance;
$reference =& $instance;
$instance->var = '$assigned will have this value';
$instance = null; // $instance and $reference become null
var_dump($instance);
echo "</br>";
var_dump($reference);
echo "</br>";
var_dump($assigned);
?>
مگه قانونا کد خط به خط از بالا اجرا نمیشه ؟
اینجا
$assigned = $instance;
$reference =& $instance;
اومده برابر قرار داده یکی یه کپی کامل یکیش مقدارشو
خوب پایینتر اومده
$instance->var = '$assigned will have this value';
$instance = null;
تغیر داده مقادیر ابجکت اصلیو حالا سوالم اینه اون متغیرهای قبلی قبل از اینا مقدار دهی شدن چرا بازم مقدارشون تغیر میکنه ؟