यदि मैं संदर्भ द्वारा फ़ंक्शन कॉल पर एक चर या ऑब्जेक्ट पास करता हूं, तो मुझे लगता है कि यह स्मृति में दूसरी वस्तु बनाने से बचाता है, इस प्रकार संसाधनों को संरक्षित करता है? उदाहरण के लिए:संदर्भ द्वारा उत्तीर्ण करना नया चर बनाने से बचें?
<?php
class CoolObject
{
// Have some properties here
public function __construct()
{
// Do some stuff
}
public function test()
{
echo("Test");
}
}
function doSomething(&$param)
{
// Calls original instance, still only one object in memory
$param->test();
// Does this create a second instance in memory, or just assign
// the reference?
$newObj = $param;
}
// Create 1st instance of object in memory
$myObj = new CoolObject;
// Do a test to determine number of instances created
doSomething($myObj);
?>
जब मैं $ newObj करने के लिए "संदर्भ द्वारा" चर सौंपा है, यह एक नया एक स्मृति में दो अप करने के लिए गिनती लाने बनाया था, या यह सिर्फ संदर्भ अभी भी केवल एक ही वस्तु छोड़ने पारित किया ?
ठीक है, मैं समझता हूं। दूसरे भाग के बारे में क्या ... $ newObj $ newObj या myObj $ "पॉइंटर" है? –