【问题标题】:Where to put string checks in Laravel? Controller, model or somewhere else?在 Laravel 中的哪里放置字符串检查?控制器、模型或其他地方?
【发布时间】:2019-05-20 19:22:03
【问题描述】:

我需要检查输入表单中的字符串以检查它是否是有效的 URL。我可能会像这样使用原生 PHP 函数:

filter_var($url, FILTER_VALIDATE_URL);

然后,如果 URL 有效,我将发出 CURL 请求以查看是否收到 200 响应。

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);

这将是 2 个独立的函数,但我的问题是这段代码最好放在 Laravel 文件夹层次结构中的哪个位置?

我想在控制器中它会是 "fine" 但这对我来说感觉像是业务逻辑,但是,新的 Laravel 模型只调用 2 个函数感觉不正确,虽然我可能想多了。

【问题讨论】:

    标签: php laravel


    【解决方案1】:

    Laravel 提供了多种方法来验证传入的数据。 已有用于验证活动 url here 的规则。

    但由于您有多个要求,我会选择custom validation rule

    我不喜欢在主线程上完成 curl 请求,因为它会阻止请求以防响应延迟,因此您可以使用 Queue

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-27
      • 2010-11-13
      • 1970-01-01
      相关资源
      最近更新 更多