$em->getConnection()->getConfiguration()->setSQLLogger(null);
$em->getConnection()->getConfiguration()->setMiddlewares([new \Doctrine\DBAL\Logging\Middleware(new \Psr\Log\NullLogger())]);
(<h1>(.+?)<\/h1>)<img class=".*?" alt="[^"]+" (src="[^"]+")>
\1<img \3 alt="\2">
find . -name "*.html" \
-exec sed -i -E 's/"([a-zA-Z0-9\._\/-]+).html"/"\1.php"/g' {} \; \
-exec rename .html .php {} \;
find . -name "*.html" \
- найти все файлы с расширением html-exec rename .html .php {} \;
- переименовать каждый файл из html в php. Нужна команда rename (sudo apt-get install rename
или sudo dnf install prename
) client_id = df.loc[df['segment'] == segment, 'client_id'][0]
# или
client_id = df.loc[df['segment'] == segment, 'client_id'].item()
# или
client_id = df[df['segment'] == segment]['client_id'].squeeze()
filename = 'myfile.txt'
with open(filename, 'r') as f:
for i, line in enumerate(f):
if not line.strip() or '@' not in line:
continue
print(line.split()[1])
Тег => [слово1, слово2]
) из строки с [keyText] и [/keyText]$text = 'Уже наступило лето , а скоро наступит осень';
$tags = '[keyText]#лето|лето,летний[/keyText] [keyText]#осень|осень,осенний[/keyText]';
function getTags($tagsStr, $before='[keyText]', $after='[/keyText]')
{
$posStart = 0;
$posEnd = 0;
$tags = [];
while($posStart < mb_strlen($tagsStr)) {
$posStart = mb_strpos($tagsStr, $before, $posStart);
if($posStart === false) {
break;
}
$posEnd = mb_strpos($tagsStr, $after, $posStart);
if($posEnd === false) {
break;
}
$tagLine = mb_substr($tagsStr, $posStart + mb_strlen($before), $posEnd - $posStart - mb_strlen($before));
if(mb_strpos($tagLine, '|') !== false) {
[$tag, $tagWordsAsStr] = explode('|', $tagLine);
$tagWords = array_unique(array_filter(array_map('trim', explode(',', $tagWordsAsStr))));
if($tagWords) {
$tags[$tag] = $tagWords;
}
}
$posStart = $posEnd + 1;
}
return $tags;
}
$textAsWords = array_map('mb_strtolower', array_unique(preg_split('/[\.\s,!()]+/u', $text)));
$foundedTags = [];
foreach (getTags($tags) as $tag => $words) {
foreach ($words as $word) {
if(in_array($word, $textAsWords)) {
$foundedTags[] = $tag;
}
}
}
printf("%s<br>%s", $text, implode(', ', $foundedTags));
$str = '<b>Авторы изобретения</b>: Разиньков Егор Михайлович и Мещерякова Анна Анатольевна </br>
Патент Российской Федерации RU2277566</br>';
print_r(preg_replace('#(<[^>]+>)#u', ' $1 ' , $str));
User-agent: Yandex
Disallow:
Clean-param: utm_source&utm_medium&utm_campaign&utm_content&utm_term&yclid
<link rel="canonical" href="http://www.example.com/blog"/>
SELECT tt.word from q862089 t
RIGHT JOIN (
SELECT 'one' AS word
UNION ALL SELECT 'five'
UNION ALL SELECT 'seven'
UNION ALL SELECT 'eight'
) tt ON t.word = tt.word
WHERE t.word IS NULL;
create temporary table tmp (word VARCHAR(64));
insert into tmp (word) VALUES ("one"), ("five"), ("six"), ('seven'), ('eight');
SELECT tt.word from q862089 t
RIGHT JOIN tmp tt ON t.word = tt.word
WHERE t.word IS NULL;
DROP TABLE tmp;
data['blog_cat_id']
остается пустым, потому что массив $data
одномерный, а $allSpecCat
- двумерный. array_merge
не находит соответствующих ключей из массива $data
в массиве $allSpecCat
, и поэтому добавляет $data
в результирующий массив без изменений. Затем в конец результирующего массив добавляются значения из массива $allSpecCat
с числовыми индексами.Так понятно же, что хочу значения из $allSpecCat['blog_cat_id'] перенести в $data['blog_cat_id'].
# если $allSpecCat - двумерный массив и нужно получить все значения из него
$data['blog_cat_id'] = array_map(function($v) {
return $v['blog_cat_id'];
}, $allSpecCat);
# если $allSpecCat - ассоциативный массив
$data['blog_cat_id'] = $allSpecCat['blog_cat_id']
/**
* @Route("/category/{category}", name="category")
*/
public function category(Category $category)
{
return $this->render('default/category.html.twig', [
'category' => $category,
'posts' => $this->getDoctrine()->getManager()->getRepository(Post::class)->findBy(['category' => $category])
]);
}