封装函数报错
来源:2-1 文件常用操作函数封装
www974
2017-09-01 11:38:09
<?php //创建文件 function create_file(string $filename){ //检测文件是否存在 if(file_exists($filename)){ //如果文件存在不需要创建文件 return false; } //检测目录是否存在 if(!file_exists(dirname($filename))){ mkdir(dirname($filename),0777,true); } if(touch($filename)){ return true; } return false; } // var_dump(create_file('test.txt')); create_file('text.txt'); ?>
报错内容:
Catchable fatal error: Argument 1 passed to create_file() must be an instance of string, string given, called in C:\wamp\www\file2\demo1.php on line 21 and defined in C:\wamp\www\file2\demo1.php on line 3
2回答
您好,是PHP版本的问题,出现该错误提示是因为您的php版本不支持函数参数类型声明,它将string当成了一个类名,要求传一个相应的实例,而老师使用的是PHP7,支持参数的string类型声明。如果解决了您的问题,请采纳,祝学习愉快~
www974
提问者
2017-09-01
把函数参数去掉string 就好了 ,当老师的代码有string 啊? 这又是为什么
相似问题