本文整理汇总了PHP中question_attempt_step::get_all_data方法的典型用法代码示例。如果您正苦于以下问题:PHP question_attempt_step::get_all_data方法的具体用法?PHP question_attempt_step::get_all_data怎么用?PHP question_attempt_step::get_all_data使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类question_attempt_step
的用法示例。
在下文中一共展示了question_attempt_step::get_all_data方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: insert_step_data
/**
* Helper method used by insert_question_attempt_step and update_question_attempt_step
* @param question_attempt_step $step the step to store.
* @param int $stepid the id of the step.
* @param context $context the context of the owning question_usage_by_activity.
*/
protected function insert_step_data(question_attempt_step $step, $stepid, $context)
{
foreach ($step->get_all_data() as $name => $value) {
if ($value instanceof question_file_saver) {
$value->save_files($stepid, $context);
}
if ($value instanceof question_response_files) {
$value = (string) $value;
}
$data = new stdClass();
$data->attemptstepid = $stepid;
$data->name = $name;
$data->value = $value;
$this->db->insert_record('question_attempt_step_data', $data, false);
}
}
示例2: insert_question_attempt_step
/**
* Store a {@link question_attempt_step} in the database.
* @param question_attempt_step $qa the step to store.
* @param int $questionattemptid the question attept id this step belongs to.
* @param int $seq the sequence number of this stop.
* @param object $context the context of the owning question_usage_by_activity.
*/
public function insert_question_attempt_step(question_attempt_step $step, $questionattemptid, $seq, $context)
{
$record = new stdClass();
$record->questionattemptid = $questionattemptid;
$record->sequencenumber = $seq;
$record->state = '' . $step->get_state();
$record->fraction = $step->get_fraction();
$record->timecreated = $step->get_timecreated();
$record->userid = $step->get_user_id();
$record->id = $this->db->insert_record('question_attempt_steps', $record);
foreach ($step->get_all_data() as $name => $value) {
if ($value instanceof question_file_saver) {
$value->save_files($record->id, $context);
}
$data = new stdClass();
$data->attemptstepid = $record->id;
$data->name = $name;
$data->value = $value;
$this->db->insert_record('question_attempt_step_data', $data, false);
}
}
示例3: test_get_data
public function test_get_data()
{
$step = new question_attempt_step(array('x' => 1, '-y' => 'frog', ':flagged' => 1));
$this->assertEquals(array('x' => '1'), $step->get_qt_data());
$this->assertEquals(array('y' => 'frog'), $step->get_behaviour_data());
$this->assertEquals(array('x' => 1, '-y' => 'frog', ':flagged' => 1), $step->get_all_data());
}
示例4: prepare_step_data
/**
* Helper method used by insert_question_attempt_step and update_question_attempt_step
* @param question_attempt_step $step the step to store.
* @param int $stepid the id of the step.
* @param context $context the context of the owning question_usage_by_activity.
* @return array of question_attempt_step_data rows, that still need to be inserted.
*/
protected function prepare_step_data(question_attempt_step $step, $stepid, $context)
{
$rows = array();
foreach ($step->get_all_data() as $name => $value) {
if ($value instanceof question_file_saver) {
$value->save_files($stepid, $context);
}
if ($value instanceof question_response_files) {
$value = (string) $value;
}
$data = new stdClass();
$data->attemptstepid = $stepid;
$data->name = $name;
$data->value = $value;
$rows[] = $data;
}
return $rows;
}