为什么这个代码会导致bool(false)


Why is this code resulting in bool(false)?

下面的代码在我的文件夹"mysqls"中检查.sql文件。然后我希望它将.sql执行到数据库中。

<?php
$dirf = 'mysqls';
$dir = scandir($dirf);
unset($dir['0']);
unset($dir['1']);
foreach($dir as $file) {
    $sql = file_get_contents($file);
    $qr = $dbh->exec($sql);
}
?> 

我使用过die(var_dump($sql));尽管它会出现bool(false)该代码成功地找到了所有具有.sql扩展名的文件,尽管它没有执行它。

您必须为file_get_contents()添加目录:

$sql = file_get_contents($dirf . '/'. $file);