如何在上传时从csv文件中删除html实体?

时间:2014-07-09 08:05:09

标签: php csv html-entities

我试图上传csv文件,它上传了csv,但数据不正确。

如何将其转换为字符串并移除& lt;p&gt ;<p>

我的csv文件数据示例:

**<p>\DECO APPLE GRN IN WOODEN CRATE SIZE 34X25X15.5CM PLASTIC</p>\**

1 个答案:

答案 0 :(得分:2)

你可以这样做。

$sample_string = '**<p>\DECO APPLE GRN IN WOODEN CRATE SIZE 34X25X15.5CM PLASTIC</p>\**';
echo strip_tags(html_entity_decode($sample_string));
// **\DECO APPLE GRN IN WOODEN CRATE SIZE 34X25X15.5CM PLASTIC\**

申请(如果没有格式错误):

$data = array();
if (($handle = fopen('sample.csv', 'r')) !== false) {
    while (($row = fgetcsv($handle, 4096, ',', "\n")) !== false) {
        $data[] = array_map(function($var){
            return strip_tags(html_entity_decode($var));
        }, $row);
    }
    fclose($handle);
}

echo '<pre>';
print_r($data);

输出:

Array
(
    [0] => Array
    (
        [0] => PROD.product_id
        [1] => PROD.sync_2
        [2] => PROD.quantity
        [3] => PROD_DESC.name
        [4] => PROD_DESC.description
        [5] => PROD_DISC.price
    )

    [1] => Array
    (
        [0] => 1
        [1] => ABCD
        [2] => 2570
        [3] => VIP
        [4] => "\ DECO APPLE GRN IN WOODEN CRATE SIZE 34X25X15.5CM PLASTIC\"
        [5] => 0.848
    )

    [2] => Array
    (
        [0] => 1
        [1] => ABCDEFG
        [2] => 2570
        [3] => VIP 2
        [4] => "\ DECO APPLE GRN IN WOODEN CRATE SIZE 34X25X15.5CM PLASTIC\"
        [5] => 10
    )
)