回答編集履歴
1
edit
answer
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
色々とツッコミどころはあります。
|
2
|
-
- [PDOStatement::execute](https://www.php.net/manual/ja/pdostatement.execute.php)の返却値はtrue/falseですが、isset()で確認されてるので、`
|
2
|
+
- [PDOStatement::execute](https://www.php.net/manual/ja/pdostatement.execute.php)の返却値はtrue/falseですが、isset()で確認されてるので、` $executed = $stmt->execute($row);`に入れば必ず条件式は満たされます(変数の内容ではなく変数の存在確認だから)
|
3
3
|
- SQLこれ、VALUES()の中には「セットしたい値」を入れるのですが、カラムしか入ってません。エラーにはならないようですが、おそらくカラムの初期値でデータが入るはず。
|
4
4
|
ただ、通常プログラムから実行するときは`?`なり名前付きパラメータなりで値をバインドするものでは。
|
5
5
|
- `if ($row === array(null)) {`これが今ひとつピンとこない表現ですが[fgetcsv](https://www.php.net/manual/ja/function.fgetcsv.php)の返却値からすると、`is_null($row[0])`とするとか、列数が決まってるなら`count($row[]) === 列数`のほうが良い気がします(つまり既にある次のチェックだけで良い)。
|