Привет народ !! знаю вопрос ламерский, но я тоько начинаю пхп изучать.... вобщем есть файл тест.тхт в нем тесты в таком виде
Цитата |
№1 Повною мiрою поняття «здоров’я» - це стан… а) фізичного комфорту; б) фiзичного i психологiчного комфорту; в) соцiального i психологiчного комфорту; г) соцiального, фiзичного i психологiчного комфорту. № 2 Чинник, що має найбiльший ступiнь впливу на стан здоров’я… а) спадковiсть; б) стан навколишнього середовища; в) спосiб життя. |
$name=array(
"xxxxxxxxx",
"aaaaaaaaaa"
);
$preis=array(
"10.20",
"5.02"
);
#vivodil v cikle
for ($i = 0; $i<sizeof($v_nam); $i++)
{
echo " Name ".$name[$i]." Preis ".$preis[$i];
}
<?php
$file = "1.txt";
$fh = fopen('1.txt', "r");
$file_array = file("$file");
for($i=0; $i < count($file_array); $i++)
{
$arr1 = str_split($file_array[$i]);
$number = "№"; //если встречается строка с первым символом №
if($arr1['0'] == $number){ //выводится она и следущая за нею
echo ("<br/>");
printf ("$file_array[$i]");
echo ("<br/>");
$i = $i+"1";
printf ("$file_array[$i]");
echo ("<br/>");
}
$skoba = ")";
if($arr1['1'] == $skoba){ //это условие при встрече со вторым символом ')'
printf ("$file_array[$i]");
echo ("<br/>");
}
}
?>
$a = file_get_contents("тест.тхт");
$expl = explode("№",$a);
function Elements($elm){
$str=substr(trim($elm),strpos($elm,"\n"));
return trim($str,"\n");
}
$arr = array_map('Elements', $expl);
$arr_ = array('');
$diff = array_diff($arr,$arr_);
for($i=0;$i<(count($diff)+1);$i++){
preg_match("#([^)]+)а\)(.*?)$#is",$diff[$i],$out);
$out[2] = "a)" . $out[2];
if($out[1]!='')
$arr_all[][$out[1]] = $out[2];
}
print "<pre>";
print_r ($arr_all);
foreach($arr_all as $arrKey=>$arrVal){
// $arrKey - вопрос
// $arrVal - ответы на вопрос, можно поделить каждый ответ через explode("\n",$arrVal)
}
<?php
/** to0n1 class lib **/
Class ParseTxt{
//---------ОБЬЯВЛЕНИЕ СВОЙСТВ-----//
// Имя обрабатываемого файла
var $file_name;
//Массив строк файла
var $file_array;
//Массивы вопросов и ответов
var $Q_array;
var $Q_1;
var $Q_2;
var $Q_3;
var $Q_4;
var $Q_5;
var $Q_6;
var $Q_7;
//Метод изменения пути файла
Function Get_Path(){
$this->file_name="./Qbank/". $this->file_name;
}
Function Fn_open(){
if (!empty($this->file_name)){
if (is_readable($this->file_name)){
$this->file_array=file($this->file_name);
}
Else{
echo "$this->file_name does not exist";
};
}
Else{
echo "Нужно ввести имя файла с базой вопросов";
}
}
//метод разбиения общего файла на массивы
Function Q_split(){
$number="№№";$qq="1";$q1="а)";$q2="б)";$q3="в)";$q4="г)";$q5="д)";$q6="е)";$q7="ж)";
for($i=0; $i < count($this->file_array); $i++)
{
$str= mb_substr($this->file_array[$i],0,2,"UTF-8");
switch ($str){
case $number:
$this->q_array[$qq]=$this->file_array[$i+1];
$qq++;
break;
case $q1:
$this->q_1[$qq-1]=$this->file_array[$i];
break;
case $q2:
$this->q_2[$qq-1]=$this->file_array[$i];
break;
case $q3:
$this->q_3[$qq-1]=$this->file_array[$i];
break;
case $q4:
$this->q_4[$qq-1]=$this->file_array[$i];
break;
case $q5:
$this->q_5[$qq-1]=$this->file_array[$i];
break;
case $q6:
$this->q_6[$qq-1]=$this->file_array[$i];
break;
case $q7:
$this->q_7[$qq-1]=$this->file_array[$i];
break;
}
}
}
}
Цитата |
Не парься, как и говорили выше форма самое оптимальное для решения таких вещей. |
Цитата |
Попробовал себе на Денвер поставил твой сайт и ОН не заработал, даже не стал копаться почему. |