1、在 Laravel 5.4 中报错:Call to undefined function App//App//Services//exif_read_data()。如图1
{
"code": 10000,
"message": "Call to undefined function App//App//Services//exif_read_data()",
"trace": [
{
"file": "E://wwwroot//msi_main//app//App//Services//StorageService.php",
"line": 66,
"function": "image_fix_orientation",
"class": "App//App//Services//StorageService",
"type": "->",
"args": [
"E://phpuploadtmp//php8753.tmp"
]
},
{
"file": "E://wwwroot//msi_main//app//Http//Controllers//Web//Prize//PrizeController.php",
"line": 458,
"function": "storeAsTmpImage",
"class": "App//App//Services//StorageService",
"type": "->",
"args": [
{},
{
"ext": "jpg"
}
]
},
{
"function": "upload",
"class": "App//Http//Controllers//Web//Prize//PrizeController",
"type": "->",
"args": [
{
"attributes": {},
"request": {},
"query": {},
"server": {},
"files": {},
"cookies": {},
"headers": {}
},
{}
]
},
{
"file": "E://wwwroot//msi_main//vendor//laravel//framework//src//Illuminate//Routing//Controller.php",
"line": 55,
"function": "call_user_func_array",
"args": [
[
{},
"upload"
],
[
{
"attributes": {},
"request": {},
"query": {},
"server": {},
"files": {},
"cookies": {},
"headers": {}
},
{}
]
]
},
{
"file": "E://wwwroot//msi_main//vendor//laravel//framework//src//Illuminate//Routing//ControllerDispatcher.php",
"line": 44,
"function": "callAction",
"class": "Illuminate//Routing//Controller",
"type": "->",
"args": [
"upload",
[
{
"attributes": {},
"request": {},
"query": {},
"server": {},
"files": {},
"cookies": {},
"headers": {}
},
{}
]
]
},
{
"file": "E://wwwroot//msi_main//vendor//laravel//framework//src//Illuminate//Routing//Route.php",
"line": 203,
"function": "dispatch",
"class": "Illuminate//Routing//ControllerDispatcher",
"type": "->",
"args": [
{
"uri": "web/prize/upload",
"methods": [
"POST"
],
"action": {
"middleware": "web",
"uses": "App//Http//Controllers//Web//Prize//PrizeController@upload",
"controller": "App//Http//Controllers//Web//Prize//PrizeController@upload",
"namespace": "App//Http//Controllers",
"prefix": null,
"where": []
},
"controller": {},
"defaults": [],
"wheres": [],
"parameters": [],
"parameterNames": [],
"computedMiddleware": [
"web"
],
"compiled": {}
},
{},
"upload"
]
},
{
"file": "E://wwwroot//msi_main//vendor//laravel//framework//src//Illuminate//Routing//Route.php",
"line": 160,
"function": "runController",
"class": "Illuminate//Routing//Route",
"type": "->",
"args": []
},
{
"file": "E://wwwroot//msi_main//vendor//laravel//framework//src//Illuminate//Routing//Router.php",
"line": 572,
"function": "run",
"class": "Illuminate//Routing//Route",
"type": "->",
"args": []
},
{
"file": "E://wwwroot//msi_main//vendor//laravel//framework//src//Illuminate//Routing//Pipeline.php",
"line": 30,
"function": "Illuminate//Routing//{closure}",
"class": "Illuminate//Routing//Router",
"type": "->",
"args": [
{
"attributes": {},
"request": {},
"query": {},
"server": {},
"files": {},
"cookies": {},
"headers": {}
}
]
},
{
"file": "E://wwwroot//msi_main//app//Http//Middleware//ConsoleCMCAuthenticate.php",
"line": 73,
"function": "Illuminate//Routing//{closure}",
"class": "Illuminate//Routing//Pipeline",
"type": "->",
"args": [
{
"attributes": {},
"request": {},
"query": {},
"server": {},
"files": {},
"cookies": {},
"headers": {}
}
]
}
]
}
2、exif_read_data — 从一个图片文件中读取 EXIF 头信息。是一个 Exif 函数,依赖于扩展:Exif。查看 phpinfo 。未安装扩展:Exif。如图2
3、本地环境为 Windows 10,查看扩展目录:C:/php-7.4.6/ext,文件 php_exif.dll 存在。如图3
4、编辑文件 php.ini。取消 ;extension=exif 中的 ;。
修改前:
;extension=exif ; Must be after mbstring as it depends on it
修改后:
extension=exif ; Must be after mbstring as it depends on it
5、查看 phpinfo 。已安装扩展:Exif。如图4
6、再次上传图片,未再报错。如图5
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/250614.html
