php 实现传入参数的传出

类似于.net的out功能,php中可以使用&实现

如下示例:

<?php
$x=2;
inOutFunction($x);
function inOutFunction(&$x){
$x=3;
return 'a';
}
echo $x;
exit();

同样,在递归中可以使用此方法传值:

如下示例遍历文件夹中的文件:

<?php
$dir='/';
print_r(scanfDir($dir,true,$ret)); function scanfDir($dir = '', $all = false, &$ret = array()) {
$x='avc';
if (false !== ($handle = opendir($dir))) {
while (false !== ($file = readdir($handle))) {
if (!in_array($file, array('.', '..', '.git', '.gitignore', '.svn', '.htaccess', '.buildpath', '.project'))) {
$cur_path = $dir . '/' . $file;
if (is_dir($cur_path)) {
$ret['dirs'][] = $cur_path;
$all && scanfDir($cur_path, $all, $ret);
} else {
$ret ['files'] [] = $cur_path;
}
}
}
closedir($handle);
}
return $ret;
}
上一篇:struts2验证框架1


下一篇:NHibernate框架与BLL+DAL+Model+Controller+UI 多层架构十分相似--『Spring.NET+NHibernate+泛型』概述、知识准备及介绍(一)