Get the App
SLTechnology News&Howtos  ›  Development  › 

How to understand the memory allocation of PHP variables

Shulou Source: shulou.com Published: 2022-06-03 07:41:25 11月15日 Update

This article introduces the relevant knowledge of "how to understand the memory allocation of PHP variables". In the operation of actual cases, many people will encounter such a dilemma, so let the editor lead you to learn how to deal with these situations. I hope you can read it carefully and be able to achieve something!

The code is as follows:

The copy code is as follows:

$a = array (

'str' = > 1

'child' = > 2

);

$b = $a

$b ['child'] = $a

B ['child'] [' str'] = 2

Echo $b ['str']

B = null

Echo $a ['str']

What will be output? the result is that there is actually no newly allocated memory when 11jiggle memory is allocated. Ab points to the same area. When $b ['child'] = $a, $b will first copy a copy of the original $a, and then modify it, that is to say, $b and $a point to different areas, and then modify $an or $b will not affect each other.

Look at this code again:

The copy code is as follows:

Class A

{

Public $str =''

Public $child

}

$a = new A ()

$b = $a

$a-> str = 1

$a-> child = 2

$b-> child = $a

$b-> child- > str = 2

Echo $b-> str

B = null

Echo $a-> str

What will be output? the result is 22. According to the actual situation, when $b-> child=$an is not re-copy like the array, ab and a-> child all point to the same area, so if you change any one, the rest will be changed.

That's all for "how to understand the memory allocation of PHP variables". Thank you for reading. If you want to know more about the industry, you can follow the website, the editor will output more high-quality practical articles for you!

Tags: Code memory allocation content region pointing time output variables problems reality situation more knowledge results different practical successful and then Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Shulou Information Redmi Microsoft Xiaomi MySQL