Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
laravel PHP致命错误:无法重新声明函数_Php_Laravel_Laravel 5 - Fatal编程技术网

laravel PHP致命错误:无法重新声明函数

laravel PHP致命错误:无法重新声明函数,php,laravel,laravel-5,Php,Laravel,Laravel 5,我有以下功能: function get_user_browser() { $u_agent = $_SERVER['HTTP_USER_AGENT']; $ub = 'unknown'; if (preg_match('/Trident\/7.0; rv:11.0/', $u_agent)) { $ub = "ie ie-11"; } elseif(preg_match('/MSIE/i', $u_agent)) { $ub = "ie"; } el

我有以下功能:

function get_user_browser() {
  $u_agent = $_SERVER['HTTP_USER_AGENT'];
  $ub = 'unknown';
  if (preg_match('/Trident\/7.0; rv:11.0/', $u_agent)) {
    $ub = "ie ie-11";
  }
  elseif(preg_match('/MSIE/i', $u_agent)) {
    $ub = "ie";
  }
  elseif(preg_match('/Chrome/i', $u_agent)) {
    $ub = "chrome";
  }
  elseif(preg_match('/Firefox/i', $u_agent)) {
    $ub = "firefox";
  }
  elseif(preg_match('/Safari/i', $u_agent)) {
    $ub = "safari";
  }
  elseif(preg_match('/Opera/i', $u_agent)) {
    $ub = "opera";
  }
  return 'browser-'.$ub;
}
我在两个刀片中声明了此函数,但出现以下错误:

FPHP致命错误:无法在第7行的/home/storage/framework/views/0800146A0E35B205E9A66BB2F000FFB2F:7中重新声明get_user_browser()(以前在/home/storage/framework/views/0800146A0E35B25E9A66BB2F00FFB2F中声明)


我怎样才能修复它呢?

这里有一个聪明的简单技巧

将名为helpers.php的文件添加到应用程序文件夹中

复制您在该文件中编写的函数

在“自动加载”块下添加到composer.json:

 "files": [
  "app/helpers.php"
]
然后运行composer更新,您将在所有代码库中获得可用的函数


在这个文件中,您可以添加任何您喜欢的助手函数,正如已经告诉您的,您应该始终避免在视图中编写php代码

您是否在同一个视图中加载这两个刀片???或者一个在主刀片中,一个在子刀片中???显然,您已经在其中一个视图中声明了此函数。同一个视图中的yes@webDev可能存在重复,称为layouts。您应该创建一个具有类似函数的帮助器文件。视图不是定义函数的好地方。绝对是的,您可以在项目的每个脚本中使用它,例如通过执行{{get_user_browser()}在veiw中使用它