- 1
- 2
//Вычисляем предыдущий месяц
$bdate = q1("SELECT '$cdate' - INTERVAL 1 MONTH");
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+54
//Вычисляем предыдущий месяц
$bdate = q1("SELECT '$cdate' - INTERVAL 1 MONTH");
+56
<html>
<head>
<style>
body{
background-color: #3366CC; /* Цвет фона веб-страницы */
}
</style>
</head>
<body>
<?php
/*error_reporting(E_ALL);*/
class Mirror{
public $sizeX;
public $sizeY;
public $filenameI;
public $filenameO;
public $red;
public $green;
public $blue;
public $alpha;
function __construct($f){
$this->filenameI=$f.".png";
$this->filenameO=$f."2.png";
$size=getimagesize($this->filenameI);
$this->sizeX=$size[0];
$this->sizeY=$size[1];
}
function saveImg(){
if(!file_exists($this->filenameO)){
$xx=$this->sizeX;
$yy=($this->sizeY)*2;
$im = imagecreatetruecolor($xx, $yy);
imageAlphaBlending($im, false);
imageSaveAlpha($im, true);
for($x=0;$x<$xx;$x++){
for($y=0;$y<$yy;$y++){
$r=$this->red[$x][$y];
$g=$this->green[$x][$y];
$b=$this->blue[$x][$y];
$alph=$this->alpha[$x][$y];
$color=ImageColorAllocateAlpha($im, $r, $g, $b, $alph);
imagesetpixel($im, $x, $y, $color);
}
}
imagepng($im, $this->filenameO);
imagedestroy($im);
}
echo "<img src=\"".$this->filenameI."\" /><hr>\n";
echo "<img src=\"".$this->filenameO."\" /><br>\n";
}
function loadImg(){
$im = imagecreatefrompng($this->filenameI);
for($x=0;$x<$this->sizeX;$x++){
for($y=0;$y<$this->sizeY;$y++){
$rgb = imagecolorat($im, $x, $y);
$color=imagecolorsforindex($im, $rgb);
$this->red[$x][$y]=$color['red'];
$this->green[$x][$y]=$color['green'];
$this->blue[$x][$y]=$color['blue'];
$this->alpha[$x][$y]=$color['alpha'];
}
}
imagedestroy($im);
}
function createMirror(){
if(!file_exists($this->filenameO)){
$yy=($this->sizeY*2);
for($x=0;$x<$this->sizeX;$x++){
$alph=0;
for($y=$this->sizeY;$y<$yy;$y++){
if($alph<126){
$alph++;
}
$this->red[$x][$y]=$this->red[$x][$this->sizeY-($y-$this->sizeY)-1];
$this->green[$x][$y]=$this->green[$x][$this->sizeY-($y-$this->sizeY)-1];
$this->blue[$x][$y]=$this->blue[$x][$this->sizeY-($y-$this->sizeY)-1];
$this->alpha[$x][$y]=$alph+$this->alpha[$x][$this->sizeY-($y-$this->sizeY)-1];
if($this->alpha[$x][$y]>127) $this->alpha[$x][$y]=127;
}
}
}
}
}
$filename="alpha";
$mirror=new Mirror($filename);
$mirror->loadImg();
$mirror->createMirror();
$mirror->saveImg();
?>
</body>
</html>
Делал для одного сайта зеркальное отражение картинки (photoshop использовать не умеем-с). Почему-то сервер часто падал.
Как оно работает, можно посмотреть здесь http://xcont.com/perc/newperceptron/cell/mirror.php
+48
function is_array_assoc($arr) {
if (is_array($arr)) {
foreach ($arr as $k => $v) {
if (is_string($k) || (is_int($k) && $k < 0)) {
return 1;
}
}
return 0;
}
return -1;
}
Взята с php.net проверка массива на ассоциативность.
Типа array(5 => 4, 8=>9, 1 => 3) не ассоциативный?
+59
while (($i <= $additional_limit) && ($i < $available_spaces)) {
$i++;
}
в недрах плагина к wordpress. Прям по-другому минимум двух чисел не найти
+61
function myrnd(){
$rnd1=rand(48,57);
$rnd2=rand(65,90);
$rnd3=rand(97,122);
$rnd4=rand(1,3);
$rnd5="rnd".$rnd4;
return $$rnd5;
}
function createReffererLink(){
$refferer="";
for($i=0;$i<12;$i++){
$refferer.=chr($this->myrnd());
}
return $refferer;
}
Нашел в своей старой партнерской программе. Угадайте, что делает этот код? ( генерирует реферальную ссылку )
+141
<?php
$sub = $_POST['sub'];
if ($sub == "Поменять"){
$player1 = $_POST['player1'];
$player2 = $_POST['player2'];
// количество дней
$days = "";
$fl = "sys/days.cou";
$fp = fopen($fl,"r");
while(!feof($fp)){
$days .= fgets($fp,2);
}
fclose($fp);
// РАБОТА С ИМЕНАМИ
// считываю имя первого pl1 - саша
$name1 = "";
$fl = "db/player".$player1.".nm";
$fp = fopen($fl,"r");
while(!feof($fp)){
$name1 .= fgets($fp,2);
}
fclose($fp);
// новый файл pl2_ саша
$fl = "db/player".$player2.".nm_";
$fp = fopen($fl,"w+");
$fw = fwrite($fp,$name1);
fclose($fp);
// считываю имя второго pl2 маша
$name2 = "";
$fl = "db/player".$player2.".nm";
$fp = fopen($fl,"r");
while(!feof($fp)){
$name2 .= fgets($fp,2);
}
fclose($fp);
// новый файл pl1 маша
$fl = "db/player".$player1.".nm";
$fp = fopen($fl,"w+");
$fw = fwrite($fp,$name2);
fclose($fp);
// новый файл pl2 саша
$fl = "db/player".$player2.".nm";
$fp = fopen($fl,"w+");
$fw = fwrite($fp,$name1);
fclose($fp);
// удаляю pl2_ саша
unlink("db/player".$player2.".nm_");
// появляются файлы pl1 маша и pl2 саша
// ТЕПЕРЬ РАБОТА С РЕЗУЛЬТАТАМИ
for ($i=1; $i<=$days; $i++){
// считываю если есть резы pl1
$fl = "db/p".$player1."d".$i.".mon";
if (file_exists($fl)){
$rez = "";
$fp = fopen($fl,"r");
while(!feof($fp)){
$rez .= fgets($fp,2);
}
fclose($fp);
$fl = "db/p".$player2."d".$i.".mon_";
$fp = fopen($fl, "w+");
$fw = fwrite($fp, $rez);
fclose($fp);
}
// считываю, если есть резы pl2
$fl = "db/p".$player2."d".$i.".mon";
if (file_exists($fl)){
$rez = "";
$fp = fopen($fl,"r");
while(!feof($fp)){
$rez .= fgets($fp,2);
}
fclose($fp);
Вот, выдавил из себя говнокод, который меняет местами игроков в таблице. Имена записаны в файлы player1.nm, player2.nm и т.д.
Результаты определенных дней записаны по такой структуре:
1) Есть дата 1.07.2012, она записана в файл day2.day (вообщем, в файл с номером по порядку: day1.day, day2.day и т.д.)
2) Если игрок player1.nm играл в день 2, на который установлена дата 1.07.2012, то к нему создается файл p1d2.mon, в который записывается его результат.
3) Потом просто считываются каждый из файлов p[PLAYER]d[DAY].mon и создается таблица.
Вот сам сайт: http://pokerstat.16mb.com/
+52
define(ADS_ACTIVE_TIME, '+1 month');
$active = date('d.m.Y H:i:s', strtotime(ADS_ACTIVE_TIME, strtotime(date('d.m.Y H:i:s'))));
Коммерческий проект. Про time() мы не слышали, похоже...
+58
$arrNotViewDeathWindow = array(
'/reklama/press/index.php' => '1',
'/reklama/press/' => '1',
'/reklama/product/index.php' => '1',
'/reklama/product/' => '1',
'/about/poll/' => '1',
'/about/poll/index.php' => '1',
'/about/poll/result.php' => '1',
'/reklama/product/orders_list.php' => '1',
);
if(!$arrNotViewDeathWindow[$_SERVER['SCRIPT_NAME']]) ...
Кусок кода из отображения всплывающего окна на сайте на всех страницах кроме...
+54
/**
* Грабли - наше всьо
* @return string
*/
function toPage()
{
...
}
прекрасно задокументированная функция
+52
$Qock = mysql_query("SELECT ...");
$Cock = mysql_num_rows($Qock);
Переменная $Cock - это ж надо так назвать!