<?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)

PassArrayByCopy_test.php的更多相关文章

随机推荐

  1. ASP.NET MVC 下使用支付宝支付接口 以及 ASP.NET Core 下相关改造支付

    通过nuget首先引用AopSdk.dll 包 下面写的是 Asp.Net MVC 下相关的支付接口 APP支付 配置客户端相关的参数,配置成自己的代码就可以了 private string APPI ...

  2. Oracle 11g的一些常用语句记录

    一.表空间 1.创建临时表空间: create temporary tablespace project_temp tempfile 'D:\Oracle\dataspace\project_temp ...

  3. xunit测试无法找到testhost或没有可用测试的问题解决方法

    xunit进行测试,需要安装如下几个包: Microsoft.TestPlatform.TestHost Microsoft.NET.Test.Sdk xunit.runner.visualstudi ...

  4. OAuth2、OpenID、SMAL 对比

    对比点 OAuth2.0 OpenID SMAL2 票据格式 JSON or SAML2 JSON XML 支持授权 Yes Yes Yes 支持认证 “伪认证” Yes Yes 创建年份 2005 ...

  5. ASP.NET Core2使用Autofac实现IOC依赖注入竟然能如此的优雅简便(转载)

    原文地址:https://www.cnblogs.com/Andre/p/9604759.html 初识ASP.NET Core的小伙伴一定会发现,其几乎所有的项目依赖都是通过依赖注入方式进行链式串通 ...

  6. BCompare注册文件+密钥被撤销解决方案

    注册码: rssAPVg2OpBjDVo3E0DhGWrjPIq0hsTSuNz13wTuzVHfb2mRgO9bZKn9Bl42D5YEyMSYPXsxzcb08dqbRlbzWNJzJXE6YVa ...

  7. maven setting 配置仓库,pom.xml中repository不起作用

    问题描述 最近做java项目,需要使用公司自己搭建的maven仓库,但是有些包公司的仓库中没有,导致下载失败. 项目环境 jdk:1.8 maven:3.5 问题原因分析 maven的setting文 ...

  8. OCC与MVCC 的区别

    一.前言 在数据库中,并发控制是指在多个用户/进程/线程同时对数据库进行操作时,如何保证事务的一致性和隔离性的,同时最大程度地并发. 当多个用户/进程/线程同时对数据库进行操作时,会出现3种冲突情形: ...

  9. 更改yum 源

    刚建好的linux服务器,有很多依赖包没有安装,手动安装会非常麻烦,可以通过更改yum源,然后通过yum进行安装会非常方便 1)根据服务器版本找到对应得镜像文件,并将 .iso 结尾的镜像文件上传到l ...

  10. 【题解】Diferenc-Diferencija [SP10622]

    [题解]Diferenc-Diferencija [SP10622] 传送门:\(\text{Diferenc-Diferencija}\) \(\text{[SP10622]}\) [题目描述] 序 ...