php报错“Function name must be a string”解决方法

发布时间:2022-3-09 10:07

在调试php代码时,抛出了“ Function name must be a string”错误,搜索了一些相关的资料,总结出了下面一些可以引起错误的资料以及解决方法。

产生错误的原因

1、使用系统变量产生错误

php产生“Function name must be a string”错误,一般出现在以“$_”开头的系统变量上面,比如下面的代码就出抛出这个错误.

示例代码:

$_GET['host'] = 'ourboke.com';
echo $_GET('host');  //这一行会抛出错误
$_POST['host'] = 'ourboke.com';
echo $_POST('host'); //这一行也会抛出错误

注意:

1、$_GET('host') 以及 $_GET('host') 这样写的话,php会认为你的$_GET或$_POST是一个 function 函数,但前面又有$符号,php 又认为他们是一个变量

2、变量是不能作为函数的,所以php会抛出“Function name must be a string”错误

3、如果在使用$_GET,$_POST,$_COOKIE,$_FILES,$_REQUEST 以及 $_SERVER 输出其中单的变量时,一定要用方括号而非括弧,例如 $_GET['xxx'] , $_POST['xxx']

修正上面的错误代码:

$_GET['host'] = 'ourboke.com';
echo $_GET['host'];
$_POST['host'] = 'ourboke.com';
echo $_POST['host'];

2、使用数组产生错误

在输出数组的单个元素时,如果不使用方括号也会产生“Function name must be a string”错误

错误代示例:

$arr = array('1','2','3',"ourboke.com");
echo $arr(3); //这一行会抛出错误

修正代码:

$arr = array('1','2','3',"ourboke.com");
echo $arr[3];
网站建设

详解PHP中数组函数的知识点

PHP 的数组是一种很强大的数据类型,与此同时 PHP 内置了一系列与数组相关的函数可以很轻易的实现日常开发的功能。所以本文便总结了一些在常见场景中利用 PHP 内置函数的实现方法,希望对你有所帮助!...
网站建设

PHP中使用mpdf导出PDF文件的实现方法

mPDF是一个很强大的PDF生成库,能基本兼容HTML标签和CSS3样式,这篇文章通过实例代码给大家介绍PHP中使用mpdf 导出PDF文件的实现方法。 具体代码如下所示: /** ...
网站建设

Vue3学习笔记之依赖注入Provide/Inject

Provide / Inject 通常,当我们需要从父组件向子组件传递数据时,我们使用 props。想象一下这样的结构:有一些深度嵌套的组件,而深层的子组件只需要父组件的部分内容。在这种情况下,如果...