返回复杂函数响应

问题描述 投票:0回答:1

当调用API调用时,如何创建一个通用的通用系统来返回应用程序代码和响应消息?

例如,我在User有一个user.php类。从我的应用程序的最高级别,让我们说我们可以打电话给app.php

$user = new User();
$user->register($params);

在此过程中大约有10件事可能出错:

  • 用户已存在
  • 参数无效
  • 等等..

我不想只返回0或1,我也希望调用者知道出了什么问题。这是一些想法

  1. 例外,我非常讨厌..
  2. 返回数组响应,即['result'=>0, 'reason'=>'not unique']

这样做的标准方法是什么?

php
1个回答
2
投票

你问过处理这类事情的标准方法。通常,处理这类错误的最佳方法是使用例外,尽管你不喜欢它们。通过使用异常,当您添加新类型的失败条件时,您可以在界面的每一侧(方法和调用者)上做更少的工作。您可以获得更易于维护且更具弹性的代码。它的性能也更高:例外有性能成本,但只有当你提高它们时。

您返回数组或对象的方法也没问题。但是,添加新条件时,您必须调整界面的两侧。

这里有一本关于PHP手册的文章。 http://php.net/manual/en/functions.returning-values.php

© www.soinside.com 2019 - 2024. All rights reserved.