Rumah > pembangunan bahagian belakang > tutorial php > codeigniter - 关于 php 引用传值的问题

codeigniter - 关于 php 引用传值的问题

WBOY
Lepaskan: 2016-06-06 20:30:17
asal
1136 orang telah melayarinya

前些天看 CI 的源代码看到了一些问题

代码段1:

<code><?php static $_log;
if ($_log === null) {
    // references cannot be directly assigned to static variables, so we use an array

    // 为什么要这样?源代码中写了注释但是跟没写一样。。。
    $_log[0] =& load_class('Log', 'core');
}
$_log[0]->write_log($level, $message);
?>
</code>
Salin selepas log masuk
Salin selepas log masuk

代码段2:

<code><?php call_user_func_array(array(&$CI, $method), $params);
// 请问将 CI 实例传入 `call_user_func_array` 有什么意义么?
?>
</code>
Salin selepas log masuk
Salin selepas log masuk

这两个点查阅了文档 但是似乎 引用传值 这个知识点网上资料少的可怜 所以只能恬不知耻来求教给位大牛了。。。

跪谢

回复内容:

前些天看 CI 的源代码看到了一些问题

代码段1:

<code><?php static $_log;
if ($_log === null) {
    // references cannot be directly assigned to static variables, so we use an array

    // 为什么要这样?源代码中写了注释但是跟没写一样。。。
    $_log[0] =& load_class('Log', 'core');
}
$_log[0]->write_log($level, $message);
?>
</code>
Salin selepas log masuk
Salin selepas log masuk

代码段2:

<code><?php call_user_func_array(array(&$CI, $method), $params);
// 请问将 CI 实例传入 `call_user_func_array` 有什么意义么?
?>
</code>
Salin selepas log masuk
Salin selepas log masuk

这两个点查阅了文档 但是似乎 引用传值 这个知识点网上资料少的可怜 所以只能恬不知耻来求教给位大牛了。。。

跪谢

<code>call_user_func_array(array(&$CI, $method), $params);
</code>
Salin selepas log masuk

这一句不是说传入CI,而是调用 $CI 的 $method 方法,并带上 $pararms 参数

举个例子:

<code>$method = 'something';
$params = array('a', 'b', 'c');
</code>
Salin selepas log masuk

就相当于调用

<code>$CI->something('a', 'b', 'c');
</code>
Salin selepas log masuk

http://php.net/manual/zh/function.call-user-func-array.php

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan