PHP引用传值实例

10 篇文章 0 订阅
6 篇文章 0 订阅

PHP引用传值实例

PHP引用传值实例

下面展示一些 内联代码片

// A code block
var foo = 'bar';
	/*
   * 获取完整的地区名称
   */
  public function getRegionName(RegionRepository $regionRepository)
  {
      try {
          $rule = [
              'cri_code' => 'require',
          ];
          $msg = [
              'cri_code.require' => 'cri_code can not be empty',
          ];
          $validate = Validate::make($rule, $msg);
          $result = $validate->check($this->request->post());
          if (!$result) {
              return api_format(self::PARAM_ERROR, $validate->getError());
          }

          $criCode = $this->request->post('cri_code');
          $info = $regionRepository->getRegionByCriCode($criCode);
          if (!$info) {
              return api_format(self::SYSTEM_ERROR, 'System error');
          }
          $prefix = '';
          $regionRepository->parentRegionName($info->cri_parent_code, $prefix);

          $data['cri_name'] = $prefix . $info->cri_name;
          return api_format(self::OK, 'Success', $data);
      } catch (Exception $e) {
          throw $e;
      }
  }

下面引用传值的方法。

参数$string既可以说是入参也可以说是出参,即它的值是最新的值。
    /*
     * 获取完整地区名称(递归方法之:引用传值)
     */
    public function parentRegionName($criCode, &$string)
    {
        try {
            if ($criCode != '000000') {
                $parentRegion = self::getRegionByCriCode($criCode);
                if (!$parentRegion) {
                    return $string;
                }
                $string = $parentRegion->cri_name . $string;
                self::parentRegionName($parentRegion->cri_parent_code, $string);
            }
            /*-----------------以下是非引用传值的写法---------------------*/
//            if ($criCode != '000000') {
//                $parentRegion = self::getRegionByCriCode($criCode);
//                if (!$parentRegion) {
//                    return $string;
//                }
//                $string = $parentRegion->cri_name . $string;
//                return self::parentRegionName($parentRegion->cri_parent_code, $string);
//            }
//
//            return $string;
        } catch (Exception $e) {
            throw $e;
        }
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值