Php 如何在laravel中定义基于条件的方法

Php 如何在laravel中定义基于条件的方法,php,laravel,Php,Laravel,我试图根据我的laravel应用程序的控制器中的条件定义一个方法。但它显示了以下错误 Symfony\Component\Debug\Exception\FatalThroTableError (E_PARSE)分析错误:语法错误,意外的'if'(T_if),应为 函数(T_函数)或常数(T_常数) HomeController.php <?php namespace App\Http\Controllers; use Illuminate\Http\Request; class Ho

我试图根据我的laravel应用程序的控制器中的条件定义一个方法。但它显示了以下错误

Symfony\Component\Debug\Exception\FatalThroTableError (E_PARSE)分析错误:语法错误,意外的'if'(T_if),应为 函数(T_函数)或常数(T_常数)

HomeController.php

<?php

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class HomeController extends Controller
{
    if (!function_exists('curl_init')) :
        define('CURLOPT_URL', 1);
        function curl_init($url = false) {
            return new Curl($url);
        }
    endif;

    public function index(){

        return view('welcome');
    }
}

男人。。。您正在类内但在任何方法外编写代码。你不能那样做。也许你想把它放在_构造函数中?

使用下面这样的类来代替它

<?php
class Curl
{
    private $curl;

    public function __construct($url = false) {
        $this->curl = !function_exists('curl_init') ? $this->makeObj($url) : 
        curl_init($url);
    }

    private function makeObj($url)
    {
        // return new class
    }
}

你要下课吗?使用“}”?这是一个语法错误,我如何才能实现同样的错误?您希望在这里实现什么?将您的代码放入
\uu construct
方法或创建一个
helper
文件,以便您可以全局访问它-这更多的是一个注释,而不是一个naswer@JohnConde为什么是评论?因为我没有写代码?我只是告诉他为什么他会犯这个错误,甚至告诉他如何解决这个问题。
<?php
class Curl
{
    private $curl;

    public function __construct($url = false) {
        $this->curl = !function_exists('curl_init') ? $this->makeObj($url) : 
        curl_init($url);
    }

    private function makeObj($url)
    {
        // return new class
    }
}
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Libs\Curl; // change this with your class path

class HomeController extends Controller
{

    public function index(){

        $curl = new Curl('http://stackoverflow.com');

        return view('welcome');
    }
}