Why isn't my Exception being caught by catch?

前端 未结 4 560
梦毁少年i
梦毁少年i 2020-12-18 18:55

I have some code that looks like this

# Try to import file
try
{
    DataManager::fileImport($_FILES[\'datafile\'][\'tmp_name\'], 
                                   


        
4条回答
  •  感情败类
    2020-12-18 19:43

    4 years later...

    @Hubro, thank you for saving me with that namespace fix!

    It does seem counterintuitive at first that it's necessary when throwing a root-level Exception, even though it ultimately makes sense in the general context of namespaces.

    For anyone who doesn't want to utilize @Hubro's file-level fix:

    use \Exception;

    You could instead add the backslash in front of Exception in the higher level catch block:

    } catch (\Exception $e) {

    We could all benefit from someone smarter than me providing suggestions on best practices around defining a custom Exception for each namespace. Any takers?

提交回复
热议问题