ref_csv

サマリ添付のcsvファイルの表示
リビジョン1.0
対応バージョン
投稿者すま?
投稿日2018-10-22 (月) 17:20:18

概要

添付されているcsvをテーブルとしてページ内に表示するプラグインです。

#ref_csv(添付ファイル名);


質問箱/2153にあったものを作りました。 プラグインは初めて作ったので、セキュリティなど問題あれば直して使ってください。
対応バージョンもわかりません。 自分のところのVersion 1.5.1では動いています。

これ機能自体の意義はあまりありません。
うちでは、csvデータのデータ定義(カラムごとのデータの意味)ごとに、素のデータから人間が見てわかるように加工したデータ表示を専用に作るためのベースとして利用しています。

ソースコード plugin/ref_csv.inc.php

<?php
///////////////////////////////////////////////////////
// 添付されているcsvをテーブルとして表示するプラグイン
///////////////////////////////////////////////////////

function plugin_ref_csv_convert()
{
    global $vars;

    if (func_num_args() == 0) {
        return ''; // Show nothing
    }
    $args = func_get_args();

    // check
    $filename = UPLOAD_DIR.encode($vars[page]).'_'.encode($args[0]);
    if (!is_readable($filename))
        return htmlspecialchars($args[0]). ' is not found.';
	
    if (($data = file_get_contents($filename))) {
        // encoding
        $data = mb_convert_encoding($data,SOURCE_ENCODING,'auto');
        $tmp = tmpfile();
        fwrite($tmp, $data);
        rewind($tmp);
        // print
        $out = '<table class="style_table" cellspacing="1" border="0">';
        while (($line = fgetcsv($tmp))) {
            $out .= '<tr>';
            foreach ($line as $one) {
                $out .= '<td class="style_td">'.htmlspecialchar($one). '</td>';
            }
            $out .= "</tr>\n";
        }
        $out .= "</table>\n";
        fclose($tmp);
        return $out;
    }
    return 'error.';
}
?>

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-10-23 (火) 19:29:43
Site admin: PukiWiki Development Team

PukiWiki 1.5.1+ © 2001-2016 PukiWiki Development Team. Powered by PHP 5.6.38-0+deb8u1. HTML convert time: 0.322 sec.

OSDN