我有一个要读取的csv文件,但在一列中有一些不需要的单词。 将所需单词写入白名单数组比制作黑名单更容易。 这是我试过的,但我得到一个空单元格。 仅当单元格索引为5(我需要修改的列)时才使用以下脚本。
$whitelist[0] = "BLACK";
$whitelist[1] = "RED";
$whitelist[2] = "ON";
$whitelist[3] = "BLUE";
$whitelist[4] = "COLOR";
$whitelist[5] = "YELLOW";
$whitelist[6] = "GREEN";
$whitelist[7] = "CYAN";
$whitelist[8] = "MAGENTA";
foreach( $csv_line as $row ){
$cell = explode(' ', $row[0]);
foreach($cell as $b=>$v)
if( !in_array($cell, $whitelist) )
unset( $cell[$b] );
$row[0] = implode(' ', $cell);
} echo "<td>".$row[0]."</td>";
任何提示都将受到赞赏。
谢谢, 塞巴斯蒂安
答案 0 :(得分:2)
更改行
if( !in_array($cell, $whitelist) )
到
if( !in_array($v, $whitelist) )
您想检查值$v
是否未列入白名单,而不是整个$cell
数组