本文整理汇总了PHP中csv_export_writer::print_csv_data方法的典型用法代码示例。如果您正苦于以下问题:PHP csv_export_writer::print_csv_data方法的具体用法?PHP csv_export_writer::print_csv_data怎么用?PHP csv_export_writer::print_csv_data使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类csv_export_writer
的用法示例。
在下文中一共展示了csv_export_writer::print_csv_data方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: execute
public function execute()
{
global $CFG, $DB;
require_once $CFG->libdir . '/csvlib.class.php';
require_once $CFG->libdir . '/moodlelib.php';
$filename = $this->expandedOptions['path'];
if ($filename[0] != '/') {
$filename = $this->cwd . DIRECTORY_SEPARATOR . $filename;
}
$categories = $DB->get_records('user_info_category', null, 'sortorder ASC');
$data = array();
foreach ($categories as $category) {
if ($fields = $DB->get_records('user_info_field', array('categoryid' => $category->id), 'sortorder ASC')) {
foreach ($fields as $field) {
$field->categoryname = $category->name;
$field->categorysortorder = $category->sortorder;
$data[] = $field;
}
}
}
// End of $categories foreach.
$header = array('id', 'shortname', 'name', 'datatype', 'description', 'descriptionformat', 'categoryid', 'sortorder', 'required', 'locked', 'visible', 'forceunique', 'signup', 'defaultdata', 'defaultdataformat', 'param1', 'param2', 'param3', 'param4', 'param5', 'categoryname', 'categorysortorder');
$csvexport = new \csv_export_writer();
$csvexport->add_data($header);
foreach ($data as $row) {
$arrayrow = (array) $row;
$csvexport->add_data($arrayrow);
}
try {
file_put_contents($filename, $csvexport->print_csv_data(true));
echo "Userfields exported to: " . $filename . "\n";
} catch (Exception $e) {
cli_error("Unable to save file. Check if file {$filename} is writable");
}
}
示例2: test_csv_functions
public function test_csv_functions() {
$csvexport = new csv_export_writer();
$csvexport->set_filename('unittest');
foreach ($this->testdata as $data) {
$csvexport->add_data($data);
}
$csvoutput = $csvexport->print_csv_data(true);
$this->assertEquals($csvoutput, $this->teststring);
$test_data = csv_export_writer::print_array($this->testdata, 'comma', '"', true);
$this->assertEquals($test_data, $this->teststring);
}
示例3: test_csv_functions
public function test_csv_functions() {
$csvexport = new csv_export_writer();
$csvexport->set_filename('unittest');
foreach ($this->testdata as $data) {
$csvexport->add_data($data);
}
$csvoutput = $csvexport->print_csv_data(true);
$this->assertEquals($csvoutput, $this->teststring);
$test_data = csv_export_writer::print_array($this->testdata, 'comma', '"', true);
$this->assertEquals($test_data, $this->teststring);
// Testing that the content is imported correctly.
$iid = csv_import_reader::get_new_iid('lib');
$csvimport = new csv_import_reader($iid, 'lib');
$contentcount = $csvimport->load_csv_content($this->teststring, 'utf-8', 'comma');
$csvimport->init();
$dataset = array();
$dataset[] = $csvimport->get_columns();
while ($record = $csvimport->next()) {
$dataset[] = $record;
}
$csvimport->cleanup();
$csvimport->close();
$this->assertEquals($dataset, $this->testdata);
// Testing for the wrong count of columns.
$errortext = get_string('csvweirdcolumns', 'error');
$iid = csv_import_reader::get_new_iid('lib');
$csvimport = new csv_import_reader($iid, 'lib');
$contentcount = $csvimport->load_csv_content($this->teststring2, 'utf-8', 'comma');
$importerror = $csvimport->get_error();
$csvimport->cleanup();
$csvimport->close();
$this->assertEquals($importerror, $errortext);
// Testing for empty content
$errortext = get_string('csvemptyfile', 'error');
$iid = csv_import_reader::get_new_iid('lib');
$csvimport = new csv_import_reader($iid, 'lib');
$contentcount = $csvimport->load_csv_content($this->teststring3, 'utf-8', 'comma');
$importerror = $csvimport->get_error();
$csvimport->cleanup();
$csvimport->close();
$this->assertEquals($importerror, $errortext);
}
示例4: execute
public function execute()
{
global $CFG, $DB;
require_once $CFG->dirroot . '/user/profile/lib.php';
require_once $CFG->libdir . '/csvlib.class.php';
$username = $this->arguments[0];
$filename = $this->expandedOptions['name'];
$user = get_user_by_name($username);
if (!$user) {
cli_error("User not found.");
} else {
$userid = $user->id;
}
$fields = array('id' => 'id', 'username' => 'username', 'email' => 'email', 'firstname' => 'firstname', 'lastname' => 'lastname', 'idnumber' => 'idnumber', 'institution' => 'institution', 'department' => 'department', 'phone1' => 'phone1', 'phone2' => 'phone2', 'city' => 'city', 'url' => 'url', 'icq' => 'icq', 'skype' => 'skype', 'aim' => 'aim', 'yahoo' => 'yahoo', 'msn' => 'msn', 'country' => 'country');
if ($extrafields = $DB->get_records('user_info_field')) {
foreach ($extrafields as $n => $v) {
$fields['profile_field_' . $v->shortname] = 'profile_field_' . $v->shortname;
}
}
$csvexport = new \csv_export_writer();
$csvexport->set_filename($filename);
$csvexport->add_data($fields);
$row = array();
profile_load_data($user);
$userprofiledata = array();
foreach ($fields as $field => $unused) {
if (is_array($user->{$field})) {
$userprofiledata[] = reset($user->{$field});
} else {
$userprofiledata[] = $user->{$field};
}
}
$csvexport->add_data($userprofiledata);
file_put_contents($filename, $csvexport->print_csv_data(true));
echo "User " . $user->username . " successfully downloaded\n";
}
示例5: print_array
/**
* This will convert an array of values into a deliminated string.
* Like the above function, this is for convenience.
*
* @param array $records An array of information to be converted.
* @param string $delimiter The name of the delimiter. Supported types(comma, tab, semicolon, colon, cfg)
* @param string $enclosure How speical fields are enclosed.
* @param bool $return If true will return a string with the csv data.
* @return string csv data.
*/
public static function print_array(array &$records, $delimiter = 'comma', $enclosure = '"', $return = false)
{
$csvdata = new csv_export_writer($delimiter, $enclosure);
foreach ($records as $row) {
$csvdata->add_data($row);
}
$data = $csvdata->print_csv_data($return);
if ($return) {
return $data;
}
}
示例6: test_csv_functions
public function test_csv_functions()
{
global $CFG;
$csvexport = new csv_export_writer();
$csvexport->set_filename('unittest');
foreach ($this->testdata as $data) {
$csvexport->add_data($data);
}
$csvoutput = $csvexport->print_csv_data(true);
$this->assertEquals($csvoutput, $this->teststring);
$test_data = csv_export_writer::print_array($this->testdata, 'comma', '"', true);
$this->assertEquals($test_data, $this->teststring);
// Testing that the content is imported correctly.
$iid = csv_import_reader::get_new_iid('lib');
$csvimport = new csv_import_reader($iid, 'lib');
$contentcount = $csvimport->load_csv_content($this->teststring, 'utf-8', 'comma');
$csvimport->init();
$dataset = array();
$dataset[] = $csvimport->get_columns();
while ($record = $csvimport->next()) {
$dataset[] = $record;
}
$csvimport->cleanup();
$csvimport->close();
$this->assertEquals($dataset, $this->testdata);
// Testing for the wrong count of columns.
$errortext = get_string('csvweirdcolumns', 'error');
$iid = csv_import_reader::get_new_iid('lib');
$csvimport = new csv_import_reader($iid, 'lib');
$contentcount = $csvimport->load_csv_content($this->teststring2, 'utf-8', 'comma');
$importerror = $csvimport->get_error();
$csvimport->cleanup();
$csvimport->close();
$this->assertEquals($importerror, $errortext);
// Testing for empty content
$errortext = get_string('csvemptyfile', 'error');
$iid = csv_import_reader::get_new_iid('lib');
$csvimport = new csv_import_reader($iid, 'lib');
$contentcount = $csvimport->load_csv_content($this->teststring3, 'utf-8', 'comma');
$importerror = $csvimport->get_error();
$csvimport->cleanup();
$csvimport->close();
$this->assertEquals($importerror, $errortext);
// Testing for a tab separated file.
// The tab separated file has a trailing tab and extra blank lines at the end of the file.
$filename = $CFG->dirroot . '/lib/tests/fixtures/tabfile.csv';
$fp = fopen($filename, 'r');
$tabdata = fread($fp, filesize($filename));
fclose($fp);
$iid = csv_import_reader::get_new_iid('tab');
$csvimport = new csv_import_reader($iid, 'tab');
$contentcount = $csvimport->load_csv_content($tabdata, 'utf-8', 'tab');
// This should import four rows including the headings.
$this->assertEquals($contentcount, 4);
// Testing for empty lines.
$iid = csv_import_reader::get_new_iid('blanklines');
$csvimport = new csv_import_reader($iid, 'blanklines');
$contentcount = $csvimport->load_csv_content($this->teststring4, 'utf-8', 'comma');
// Five lines including the headings should be imported.
$this->assertEquals($contentcount, 5);
}
示例7: evapares_get_all_data
function evapares_get_all_data($cmid, $evaparesname)
{
global $DB;
$csv = new csv_export_writer("semicolon", '"');
$filename = "evapares_alldata_" . $evaparesname . "_" . date("d-m-Y", time());
$header = array("N" => "N", "Grupo" => "Grupo", "Alumno evaluado" => "Alumno evaluado", "Email" => "Email", "Alumno evaluador" => "Alumno evaluador", "Evaluación" => "Evaluación", "Tiempo de respuesta" => "Tiempo de respuesta", "Nota" => "Nota", "Stop" => "Stop", "Start" => "Start", "Continue" => "Continue", "P1" => "P1", "P2" => "P2", "P3" => "P3", "P4" => "P4", "P5" => "P5", "P6" => "P6", "P7" => "P7", "P8" => "P8", "P9" => "P9", "P10" => "P10", "P11" => "P11", "P12" => "P12");
$csv->add_data($header);
$sqlfulldata = "SELECT ee.id, \r\n\t\t\tg.name AS gname, \r\n\t\t\tee.alu_evaluado_id AS evaluado,\r\n\t\t\tCONCAT(u.firstname, ' ', u.lastname) AS username,\r\n\t\t\tu.email,\r\n\t\t\tee.alu_evalua_id AS evaluator,\r\n\t\t\tee.iterations_id AS itid,\r\n\t\t\tei.evaluation_name as evaluacion,\r\n\t\t\tei.n_iteration AS inum,\r\n\t\t\tee.enddate,\r\n\t\t\tee.nota,\r\n\t\t\tee.ssc_stop AS stop, \r\n\t\t\tee.ssc_start AS start,\r\n\t\t\tee.ssc_continue AS cont\r\n\t\t\tFROM {user} AS u\r\n\t\t\tINNER JOIN {groups_members} AS gm ON (u.id = gm.userid)\r\n\t\t\tINNER JOIN {groups} AS g ON (gm.groupid = g.id)\r\n\t\t\tINNER JOIN {course} AS c ON (g.courseid = c.id)\r\n\t\t\tINNER JOIN {course_modules} AS cm ON (c.id = cm.course AND cm.id = ?)\r\n\t\t\tINNER JOIN {evapares_iterations} AS ei ON (cm.id = ei.evapares_id)\r\n\t\t\tINNER JOIN {evapares_evaluations} AS ee ON (ei.id = ee.iterations_id AND ee.alu_evaluado_id = u.id)\r\n\t\t\tORDER BY g.name, ei.id, ee.alu_evaluado_id";
$evaluations = $DB->get_recordset_sql($sqlfulldata, array($cmid));
$count = 1;
foreach ($evaluations as $evaluation) {
$row = array();
$row[] = $count;
$row[] = $evaluation->gname;
$row[] = $evaluation->username;
$row[] = $evaluation->email;
$row[] = "Anónimo";
$row[] = $evaluation->evaluacion;
if ($evaluation->enddate != NULL) {
$row[] = date("H:i - d/m/Y", $evaluation->enddate);
} else {
$row[] = "No realizado";
}
$row[] = $evaluation->nota;
$row[] = (string) $evaluation->stop;
$row[] = (string) $evaluation->start;
$row[] = (string) $evaluation->cont;
$sqlanswers = "SELECT eha.id, \r\n\t\t\t\teq.n_of_question AS nquestion, \r\n\t\t\t\tea.number, \r\n\t\t\t\tea.text\r\n\t\t\t\tFROM {evapares_eval_has_answ} AS eha\r\n\t\t\t\tINNER JOIN {evapares_answers} AS ea ON (ea.id = eha.answers_id)\r\n\t\t\t\tINNER JOIN {evapares_questions} AS eq ON (ea.question_id AND eq.id)\r\n\t\t\t\tWHERE eha.evaluations_id = ?\r\n\t\t\t\tGROUP BY eha.id \r\n\t\t\t\tORDER BY eq.n_of_question";
// Have answers
if ($answers = $DB->get_records_sql($sqlanswers, array($evaluation->id))) {
foreach ($answers as $answer) {
$row[] = $answer->number;
}
} else {
for ($answer = 1; $answer <= 12; $answer++) {
$row[] = "0";
}
}
$csv->add_data($row);
$count++;
}
$evaluations->close();
$csv->set_filename($filename);
$csv->download_file();
echo $csv->print_csv_data();
}
示例8: array
function export_csv($report, $filename = '') {
global $DB, $CFG;
require_once($CFG->libdir . '/csvlib.class.php');
$table = $report->table;
$matrix = array();
$filename = '' ? $filename = 'report.csv' : $filename . '.csv';
if (!empty($table->head)) {
$countcols = count($table->head);
$keys = array_keys($table->head);
$lastkey = end($keys);
foreach ($table->head as $key => $heading) {
$matrix[0][$key] = str_replace("\n", ' ', htmlspecialchars_decode(strip_tags(nl2br($heading))));
}
}
if (!empty($table->data)) {
foreach ($table->data as $rkey => $row) {
foreach ($row as $key => $item) {
$matrix[$rkey + 1][$key] = str_replace("\n", ' ', htmlspecialchars_decode(strip_tags(nl2br($item))));
}
}
}
$csvexport = new csv_export_writer();
$csvexport->set_filename($filename);
foreach ($matrix as $ri => $col) {
$csvexport->add_data($col);
}
if ($filename) {
$fp = fopen($filename, "w");
fwrite($fp, $csvexport->print_csv_data(true));
fclose($fp);
} else {
$csvexport->download_file();
exit;
}
}