$inValues = [1, 2, 3, 4];
$inKeys = array_map(function($key){return ':var_'.$key;}, array_keys($inValues));
$sql = 'SELECT * FROM `table` WHERE `field` IN ('.implode(',', $inKeys).')';
echo $sql;
$db = new PDO(...);
$stmt = $db->prepare($sql);
foreach($inValues as $key=>$val) {
$stmt->bindParam(':var_'.$key, $val);
}
<?php
$inValues = [1,2,3,4];
$preparedInValues = array_combine(
array_map(function($key) {
return ':var_'.$key;
}, array_keys($inValues)),
array_values($inValues)
);
$sql = 'SELECT * FROM `table` WHERE `field` IN ('.implode(',', array_keys($preparedInValues)).')';
echo $sql;
$db = new PDO(...);
$stmt = $db->prepare($sql);
$stmt->execute($preparedInValues);
$url = 'http://mysite.com/#something';
$base ='http://mysite.com/#';
if (preg_match('~^'.preg_quote($base).'[a-z0-9]{5}$~i', $url)) {
echo 'Valid';
} else {
echo 'Invalid';
}
<style>
.i {
background-image:url(https://laravel.ru/favicon.ico);
width:16px;
height:16px;
display:inline-block;
vertical-align:bottom;
}
</style>
<span class="i"></span> <a href="#">Test</a>
<?php
if (isset($_GET['lang'])) {
setcookie("lang", $_GET['lang'], time()+365*24*60*60, "/");
Header('Location:?');
}
$tr['Site menu'] = [
'ru' => 'Меню сайта',
'es' => 'Menu del sitio',
];
function _($def) {
global $tr;
$ret = $def;
if (isset($tr[$def])) {
$lang = isset($_COOKIE['lang']) ? $_COOKIE['lang'] : '';
if (isset($tr[$def][$lang])) {
$ret = $tr[$def][$lang];
} // else throw new Exception('Translation to language "'.$lang.'" for phrase "'.$def.'" not found');
} // else throw new Exception('Default translation for phrase "'.$def.'" not found');
return $ret;
}
?>
<!doctype html5>
<html>
<head><meta charset="utf-8" /> </head>
<body>
<a href="?lang=en">En</a>
· <a href="?lang=ru">Ru</a>
· <a href="?lang=es">Es</a>
· <a href="?lang=ar">Ar</a>
<hr>
<?=_('Site menu')?>
</body>
</html>
?>
<!doctype html5>
<html>
<head><meta charset="utf-8" /> </head>
<body>
<a href="?lang=en">En</a>
· <a href="?lang=ru">Ru</a>
· <a href="?lang=es">Es</a>
· <a href="?lang=ar">Ar</a>
<hr>
<?=_('Site menu')?>
</body>
</html>
if ($res = $wpdb->query( $wpdb->prepare('INSERT IGNORE INTO tbl SET name = %s', 'test' ))) {
echo 'Все ок';
} else {
echo 'Уже существует';
}
$wpdb->hide_errors();
if ($res = $wpdb->query( $wpdb->prepare('INSERT INTO tbl SET name = %s', 'test' ))) {
echo 'Все ок';
} else {
echo strpos($wpdb->last_error,'Duplicate entry') ? 'Уже существует' : $wpdb->last_error;
}
http://example.com/code.php?var0=system&var1=php+-r+%22phpinfo%28%29%3B%22
php -r"phpinfo();"
$ctx = stream_context_create(['http'=>['timeout'=>3]]); // таймаут в секундах
$maxAttempts = 2; // макс кол-во попыток
$attempt = 0; // тут будет храниться кол-во совершенных попыток
while(!($content=file_get_contents('http://lll', false, $ctx)) && ++$attempt<$maxAttempts); // тут магия
echo $content; // полученный контент
$array = uasort($array, function(a, b){
тут надо сравнить буквы (если по алфавиту)
из a['description'] с b['description']
и вернуть в $res -1, 0 или 1 соответственно
return $res;
});
print_r($array);