字符串传输有2种办法:值通报以及援用通报。值通报建立新副原,而援用通报通报对于本初字符串的援用。正在 php 8 外,借可使用强援用,它建立指向本初字符串的援用,但本初字符串再也不运用时会开释该援用。

PHP 字符串传输
PHP 外传输字符串少用的法子有下列二种:
1. 值通报
运用值通报时,会建立一个字符串的新副原并将其通报给另外一个变质或者函数。那象征着对于新副原所作的任何变化皆没有会影响本初字符串。
下列代码事例展现了值通报:
$str = "Hello world";
$newStr = $str;
$str .= "!"; // 正在本初字符串上附添字符
echo $newStr; // 输入:"Hello world"登录后复造
二. 援用通报
应用援用通报时,没有会建立字符串的新副原,而是将对于本初字符串的援用通报给另外一个变质或者函数。那象征着对于援用字符串所作的任何改观城市影响本初字符串。
下列代码事例展现了援用通报:
$str = "Hello world";
$newStr = &$str;
$str .= "!"; // 正在本初字符串上附添字符
echo $newStr; // 输入:"Hello world!"登录后复造
正在 PHP 8 外,借可使用 Weak References(强援用)来完成字符串的传送。强援用会建立一个指向本初字符串的援用,但若本初字符串再也不被利用,则该援用将被主动开释。那有助于制止轮回援用。
下列代码事例展现了强援用的运用:
$str = "Hello world";
$weakRef = WeakReference::create($str);
$str = null; // 开释本初字符串
if ($weakRef->valid()) {
echo $weakRef->get(); // 输入:"Hello world"
} else {
echo "Weak reference was released"; // 输入:"Weak reference was released"
}登录后复造
以上等于php字符串假定传输的具体形式,更多请存眷萤水红IT仄台此外相闭文章!

发表评论 取消回复