PassArrayByCopy_test.php

<?php
//PassArrayByCopy_test.php
$a=array("a","b","c");
function test(array $p)
{
    $len=count($p);
    for($i=0;$i<$len;$i++)
    {
        $p[$i]='Ex~' . $p[$i];
    }
    echo 'in function test:<br>';
    var_dump($p);
    echo 'leave function test.<br>';
}

var_dump($a);
test($a);
var_dump($a);
echo '<hr>';
function test2()
{
    global $a;
    $len=count($a);
    for($i=0;$i<$len;$i++)
    {
        $a[$i]='Ex~' . $a[$i];
    }
    echo 'in function test2:<br>';
    var_dump($a);
    echo 'leave function test2.<br>';
}

test2();
var_dump($a);

?>

 

array (size=3)
  0 => string 'a' (length=1)
  1 => string 'b' (length=1)
  2 => string 'c' (length=1)
in function test:
array (size=3)
  0 => string 'Ex~a' (length=4)
  1 => string 'Ex~b' (length=4)
  2 => string 'Ex~c' (length=4)
leave function test.
array (size=3)
  0 => string 'a' (length=1)
  1 => string 'b' (length=1)
  2 => string 'c' (length=1)
in function test2:
array (size=3)
  0 => string 'Ex~a' (length=4)
  1 => string 'Ex~b' (length=4)
  2 => string 'Ex~c' (length=4)
leave function test2.
array (size=3)
  0 => string 'Ex~a' (length=4)
  1 => string 'Ex~b' (length=4)
  2 => string 'Ex~c' (length=4)

 

array (size=3)
  0 => 

string

 'a' (length=1)
  1 => 

string

 'b' (length=1)
  2 => 

string

 'c' (length=1)

in function test:

array (size=3)
  0 => 

string

 'Ex~a' (length=4)
  1 => 

string

 'Ex~b' (length=4)
  2 => 

string

 'Ex~c' (length=4)

leave function test.

array (size=3)
  0 => 

string

 'a' (length=1)
  1 => 

string

 'b' (length=1)
  2 => 

string

 'c' (length=1)

in function test2:

array (size=3)
  0 => 

string

 'Ex~a' (length=4)
  1 => 

string

 'Ex~b' (length=4)
  2 => 

string

 'Ex~c' (length=4)

leave function test2.

array (size=3)
  0 => 

string

 'Ex~a' (length=4)
  1 => 

string

 'Ex~b' (length=4)
  2 => 

string

 'Ex~c' (length=4)

 

posted @ 2017-06-25 15:02  sky20080101  阅读(124)  评论(0编辑  收藏  举报