Skip to content

Commit 1a16c44

Browse files
committed
include file and line number in deprecation
1 parent e64ad61 commit 1a16c44

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

Mapping/Loader/YamlFileLoader.php

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,17 @@ private function getClassesFromYaml()
114114
$this->yamlParser = new Parser();
115115
}
116116

117-
$classes = $this->yamlParser->parse(file_get_contents($this->file), Yaml::PARSE_KEYS_AS_STRINGS);
117+
$prevErrorHandler = set_error_handler(function ($level, $message, $script, $line) use (&$prevErrorHandler) {
118+
$message = E_USER_DEPRECATED === $level ? preg_replace('/ on line \d+/', ' in "'.$this->file.'"$0', $message) : $message;
119+
120+
return $prevErrorHandler ? $prevErrorHandler($level, $message, $script, $line) : false;
121+
});
122+
123+
try {
124+
$classes = $this->yamlParser->parse(file_get_contents($this->file), Yaml::PARSE_KEYS_AS_STRINGS);
125+
} finally {
126+
restore_error_handler();
127+
}
118128

119129
if (empty($classes)) {
120130
return array();

0 commit comments

Comments
 (0)