Второе в моей жизни "столкновение" с php сломало мой незрелый мозг гуманитария. Пытаюсь добавить в скрипт, выводящий данные из БД в html, атрибуты микроразметки, чтобы всем ячейкам нужных столбцов хтмл-таблицы присваивался соответствующий микрокласс.
Насколько я сумела понять, мне нужно добавить что-то вроде этого:
function setAttribute(array_column()){
for($inn = 0; $inn < $arrayCount; $inn++){
setAttribute('itemprop','name');
}
}
Требуется еще каким-то образом определить нужный столбец...
Подскажите, туда ли я "копаю"? Что нужно исправить, если код выше имеет право на существование? Может, конечно, совсем ерунду написала. У меня крайне фрагментарные представления о пхп.
Подскажите, пожалуйста, как решить мою задачу. Или буду очень признательна за ссылку на мануал (оч. желательно на русском, буржуинским слабо владею).
Вообще, любое конкретное направление (ну, кроме нецензурного:), куда взор направить, дабы осуществить задуманное.
Arendach, видимо, это тот код, о котором Вы говорите?
foreach($html->getElementsByTagName('tr') as $tr){
if($tr->getAttribute('class')=='restop'){
continue;
}
$tds = $tr->getElementsByTagName('td');
if($tds->item(0)->hasAttribute('colspan')){
continue;
}
$address = explode(',',$tds->item(2)->nodeValue);
if($stmt = $db->prepare($sql)){
$stmt->bindValue(1,clearString($address[0]),SQLITE3_TEXT);//area
$stmt->bindValue(2,clearString(implode(', ',array_slice($address,1))),SQLITE3_TEXT);//address
$stmt->bindValue(3,clearString($tds->item(3)->nodeValue),SQLITE3_TEXT);//metro
$stmt->bindValue(4,clearString($tds->item(4)->nodeValue),SQLITE3_TEXT);//floor
$stmt->bindValue(5,intval($tds->item(1)->nodeValue),SQLITE3_INTEGER);//rooms
$stmt->bindValue(6,clearString($tds->item(1)->nodeValue),SQLITE3_TEXT);//rooms_s
$stmt->bindValue(7,clearString($tds->item(5)->nodeValue),SQLITE3_INTEGER);//sq_total
$stmt->bindValue(8,clearString($tds->item(6)->nodeValue),SQLITE3_TEXT);//sq_room
$stmt->bindValue(9,clearString($tds->item(7)->nodeValue),SQLITE3_INTEGER);//sq_kitchen
$stmt->bindValue(10,clearString($tds->item(8)->nodeValue)=='+');//phone
$stmt->bindValue(11,clearString($tds->item(9)->nodeValue)=='+');//furniture
$stmt->bindValue(12,clearString($tds->item(10)->nodeValue)=='+');//fridge
$stmt->bindValue(13,clearString($tds->item(11)->nodeValue)=='+');//st_metro
$stmt->bindValue(14,intval($tds->item(12)->nodeValue));//price
$stmt->bindValue(15,clearString($tds->item(13)->nodeValue),SQLITE3_TEXT);//term
$stmt->bindValue(16,clearString(preg_replace(['/^[^,]+,/','/Взято.*$/'],'',$tds->item(16)->nodeValue)),SQLITE3_TEXT);//other
$stmt->bindValue(17,date('Y-m-d H:i:s'));//created_at
$stmt->execute();
$added++;
}
$total_rows++;
}
Виртуальный выделенный сервер (VDS) становится отличным выбором
На локальном сервере установил заглушку fakesandmail(/usr/bin/fakesendmailsh -bs)
/^[\-\\s\'A-яA-zЁёәіңғүұқөһӘІҢҒҮҰҚӨҺ]*$/ - это регулярное выражение почему-то пропускает ^\_