mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
и после этого смотреть сообщение об ошибке<select id="event"></select>
<select id="dates"></select>
const events = [
{ name: '...', dates: [ ... ] },
{ name: '...', dates: [ ... ] },
...
];
const eventEl = document.querySelector('#event');
const datesEl = document.querySelector('#dates');
eventEl.innerHTML = events
.map((n, i) => `<option value="${i}">${n.name}</option>`)
.join('');
eventEl.addEventListener('change', function() {
datesEl.innerHTML = events[this.value].dates
.map(n => `<option>${n}</option>`)
.join('');
});
eventEl.dispatchEvent(new Event('change'));
arr.reduce((acc, n) => (
n = n.match(/(\S+) = (.*)/),
n && (acc[n[1]] = n[2]),
acc
), {})
Object.fromEntries(arr
.map(n => n.split(': ').pop().split(' = '))
.filter(n => n.length === 2)
)
$doc = new DOMDocument();
$doc->loadHTML($html);
$a = $doc->getElementsByTagName('a');
$result = array_map([ $doc, 'saveHTML' ], iterator_to_array($a));
$result = preg_split('/(?<=\/a>)(?=<a)/', $html);
// или
preg_match_all('/<a .*?>.*?<\/a>/', $html, $matches);
$result = $matches[0];
<div>
<p>Text</p>
<ul>
<li>Apple</li>
<li>Banana</li>
</ul>
</div>
И примерно такой код:const tmpl = document.createElement('template');
tmpl.innerHTML = msg; // строка с HTML
const df = tmpl.content; // DocumentFragment
df.children // массив из одного элемента: наружний div
df.children[0].children // массив с двумя эл.: параграфом и списком
df.children[0].children[1].children[1].textContent // "Banana"
out.innerText = badWords.reduce((str, n) => str.replaceAll(n, '*'.repeat(n.length)), field);
for (const n of badWords) {
field = field.replace(RegExp(n, 'g'), Array(n.length + 1).join('*'));
}
out.textContent = field;
out.innerHTML = (function replace(str, i, word = badWords[i]) {
return word
? replace(str.split(word).join(Array(word.length).fill`*`.join``), -~i)
: str;
})(field, 0);
.wrapper {
display: grid;
grid-auto-flow: dense;
grid-template-columns: 1fr 1fr;
grid-gap: 10px;
}
.box {
background-color: #444;
color: #fff;
border-radius: 5px;
padding: 20px;
font-size: 150%;
}
.box:nth-child(6n + 1),
.box:nth-child(6n + 6) {
grid-row: span 2;
}
.box:nth-child(6n + 5) {
grid-column: 1;
}