2

CSV ファイルの特定の値を配列に読み込んでいます。各行を MySQL データベースに挿入する前に、各値に対していくつかの基本的な検証チェックを実行したいと考えています。ある種のルール配列を使用して、これを効率的に行う方法を考えています。

例: CSV の各行の特定の位置の値のみが必要です

$while ($data = fgetcsv....)

$val1 = $data[2];
$val2 = $data[9];
$val3 = $data[11];

各値を検証したい - いずれかの値が検証されない場合、挿入を中止します

if (ctype_alnum($val1) AND ctype_alnum($val2) AND is_numeric($val3))

上記のアプローチは、約 30 個の値を処理するときにかなり非効率的に見えるため、目的の値の位置と検証ルールを格納する配列を作成することで改善する方法があるかどうか疑問に思っていました。以下のようなもの...

$vals = array(
'val1' => array('pos' => 2, 'rule' => 'ctype_alphanum')
)

これに関する任意のポインタは素晴らしいでしょう..!

4

1 に答える 1