May 3 2010

Jutro poslednje

Vladimir

Opet sam te sanjao jutro moje,

Osmehe tvoje i pogled blag,

Opet sam video kako smotano trcis po keju,

onom nasem,

i sebe sa tobom dok jutro cekam,

bez tebe…

Trebalo da ljudi najave nekako

jedni drugim

Dragi, ovo je nase poslednje jutro

Da ga kako treba zapamtim

I provedem

I nikad ne zazalim za tim

Jutrom poslednjim…

Ma bezveze… Nije poslednje…

Doci ces.


Apr 30 2010

Bistro I

Vladimir

Mozda sam preterao. Mozda nisam smeo da pokazem koliko mi je sve to bilo nevazno i koliko sam daleko bio u tom trenutku dok se sve to desavalo tu, meni ispred nosa. Sve je pocelo tako sto je ona postavila prosto pitanje.

- Zasto mi vise ne pricamo?

- Ne pricamo? Pa sta sada radimo?

- Nemoj me zajebavati. Znas na sta mislim.

- Ne, ne znam na sta mislis.- u stvari, mozda me je boleo kurac na sta ona misli.

Upoznao sam je u Bistrou, sedela je sama, do izloga, odvaljena od alkohola. Kada sam je ugledao nisam znao da li nekog ima sa druge strane izloga, ili je to moj odraz  u izlogu. Primakao sam lice izlogu, onako tacno ispred nje i poceo da pravim grimase, kreveljim se i kezim… Da, i ja sam bio prilicno odvaljen od pica. U sred moje tacke, ona je podigla glavu i ugledala budalku koja se krevelji. Nasmejala se i pokazala svom zamisljenom prijatelju prstom ka meni. Tek tada sam se osetio glupo. Okrenuo sam se ka njenom prijatelju i izvinuo se. Pokazala mi je rukom da udjem.

- Al si ti sestro pijana. Auh!

Nasmejala se. Bila je lepa, valjda. Ne secam se. Sigurno je bila lepa. I bila je sama. Njen imamginarni prijatelj je otisao, uplasio se valjda. Izvukao sam stolicu i seo pored nje. Naslonio sam se laktovima na sto, iskrenuo glavu malo u stranu, uhvatio joj pogled i rekao:

- Sto si se ovako upropastila? – tesko je bilo izgovoriti slovo R. Zaplitao sam jezikom.

- Ma nisam, sta ji te. Hahahaha, sta Ji te – pocela je naglas da se cereka, pa i ja sa njom.

- Sta ces popiti -upitala me- ja sam veceras ovde otvorila racun.

- Hehehe, ma sta pijes ti i ja cu, svejedno mi je, ne znam ni sta sam do sada pio…

Ona se malo iskrenu, podigne ruku, i pokaza konobaru da donese dva pica. Krajickom oka snimih da je konobar razumeo i klimnuo glavom. Onda mi oko zape za njen dekolte.

Imala je na sebi tanku majicicu, poluzbacenu sa desnog ramena, tako da je nekako neobavezno pala preko njenih grudi, zaustavljena bradavicom. Prizor u kojem sam uzivao svega par trenutaka, kada je levom rukom podigla majicu, pogledala ka svojim grudim, zatim u mene.

- Sta si zinuo, jebem te pijana – i opet pocela da se cereka.

Moj pogled je i dalje stajao na mestu gde se malopre mogao nazreti pocetak nejne bradavice, jos uvek pokusvajaci da to nekako mislima svucem.

- Ja sam se napio. – to je bilo najpametnije sto sam mogao da kazem.

Okrenula se ponovo ka konobaru, pa pogledala u mene, smaknula majicu, ovog puta namerno, i proderala se da ne treba pice, nego da donese racun.

- Idemo do mene, imam ja neku cugu kuci.


Apr 30 2010

Ne budi me

Vladimir

Zaspacu nocas na necijim grudima

Sekund pre nego umrem

Proci cu sa tobom hiljadu godina

Taj sekund pre nego umrem

Na tudjim grudima

I ne budi me nocas

Ne tresi mi ramena

I ne lupaj samare

Ne placi i ne dozivaj me

Ne ne spavam, zapravo

Ne budi me sa lazi na usnama

Iz svog sna u moj san

Ne mozes preskociti tek tako

Pusti me da odem miran

Ne trazi da obecam

Ne trazi da lazem

Ne budi me….


Apr 30 2010

Ne volem vise svoj grad

Vladimir

Ne volem ulicu Dunavsku.

Voleo sam je.

Ne volem ni Pasicevu.

Voleo sam je.

Ne volim ni Zmaj Jovinu.

Voleo sam je.

Vise ne brojim plocice i ne sutam kamencice.

Hiljadu kisa od tada pa opet uvek isti miris ostane.

I nece prestati nikada. Pricam sa sobom.

I pogledam u zvonik saborne.

Slao sam tajne poruke tom raketom.

Negde su ispale.

Ne volim vise svoj grad.

Promenio se.


Apr 30 2010

Ptica

Vladimir

Danas sam nasao mrtvu pticu.

Uzeo sam pticu i ubacio je u kutiju od cipela.

Ondeo sam kutiju od cipela pored reke.

Iskopao sam rupu i u nju ubacio kutiju.

Zatrpao sam kutiju zemljom.

Zemlju sam pokrio liscem.

Lisce sam pokrio recima- Nisi ti jedina ptica na svetu.


Apr 30 2010

Usne na staklu

Vladimir

Trag usana na staklu probudi secanja

Snovi su tu samoo da se pakosno smese

Svaki put u nekom novom obliku

Svake noci

Menjam mesta, ljude

Menjam dogadjaje

Zmajeve i Heroje

Dobre i Zle

Samo uvek ista Princeza ostane

Da se smeje decackoj naivnosti odraslih

U snu…

Ne namerno

Da napisemo po hiljadu izvinjenja

Ne vredi

I ne cekam vise dan kada ce doci

I umro sam vise od dva puta

I ne gledam kroz prozor odskrinut, ne

Sad cekam dan kada cu reci

E, nocas je nisam sanjao

Pa tek odatle mozemo dalje…

I prokleti trag usana na staklu tus kabine….

Voda je bila prevruca, i staklo sveze ocisceno… iznutra…

Ali usne su zaspale sa spoljasne strane

I nemam snage da ih obrisem

Neka ih…


Dec 9 2009

Fix ‘is deprecated in’ errors in PHP 5.3

Vladimir

If you are getting something like “Deprecated: Function eregi() is deprecated in” it could mean two things

1) You are working on PHP 5.3 and you have set your PHP error_reporting set to all (which is good on development stage)

2) Your hosting provider updated to PHP  5.3

Now you are wondering how to fix it.

Since PHP 5.3 all ereg family of functions are replaced by preg functions and they became deprecated, which means they will be cause fatal error in PHP 6 once its released.

You can fix that on two ways:

Change your php.ini settings and turn off display reporting or set error_reporting = E_ALL & ~E_NOTICE. This is something i would not recommend to do.

Better way imho is to fix those errors in your code.

So, something like

[code lang="php"]

ereg('\.([^\.]*$)', $var1, $var2);

[/code]

should be replaced with

[code lang="php"]

preg_match('/\.([^\.]*$)/', $var1, $var2);

[/code]

I hope you see the difference. I just wrapped the pattern with slashes / /

Since preg functions does not have anything like pregi, if we are using eregi or eregi_replace, we need to use modifier within preg functions.

So, something like

[code lang="php"]

eregi('\.([^\.]*$)', $var1, $var2);

[/code]

should be replaced with

[code lang="php"]

preg_match('/\.([^\.]*$)/i', $var1, $var2);

[/code]

As you can see i added ‘i’ modifier after slash /i

Fix deprecated split() function:

‘Deprecated: Function split() is deprecated in’ can be fixed using explode() function.

So if you have something like:

[code lang="php"]

split('-', $string);

[/code]

should be replaced with

[code lang="php"]

explode('-', $string);

[/code]

That would be all for now, happy coding!


Nov 12 2009

Read images from directory

Vladimir

How to read images from directory?
Lets say you need to read directory and to pull out only images in it.
It can be done easily using preg_match() PCRE functions built in PHP.
[code lang="php"]
$listDir = array();
if($handler = opendir($dir)) {
while (($sub = readdir($handler)) !== FALSE) {
if ($sub != "." && $sub != ".." && $sub != "Thumb.db") {
//remove all but images
if(preg_match("/(.*)\.(jpg|bmp|jpeg|png|gif)/i", $sub)) {
if(is_file($dir."/".$sub)) {
$listDir[] = $sub;
}elseif(is_dir($dir."/".$sub)){
$listDir[$sub] = $this->getImages($dir."/".$sub);
}
}
}
}
closedir($handler);
}
[/code]


Nov 11 2009

PHP array() to string

Vladimir

Its very easy to achieve.

[code lang="php"]
//create an example array
$array = array('mile'=>'lojpur', 'pera'=>'lozac');
if(is_array($array)){//check if $array is array
foreach($array as $key=>$value){
$k [] = $key;
$v []= $value;
}
$keys = implode(', ',$k);//output mile, pera
$values = implode(', ',$v);//output lojpur, lozac
Util::dump($keys,'Keys');//use a class from previous article
Util::dump($values, 'Values');
}
[/code]


Nov 11 2009

Dump your debug in nice formated way

Vladimir

This is a nice class i am using all the time. It will display a very nice and styled debug info.

Actually its improved var_dump() built in PHP.

[code lang="php"]
class Util{
public static function dump($var, $info = FALSE)
{
$scope = false;
$prefix = 'unique';
$suffix = 'value';

if($scope) $vals = $scope;
else $vals = $GLOBALS;

$old = $var;
$var = $new = $prefix.rand().$suffix; $vname = FALSE;
foreach($vals as $key => $val) if($val === $new) $vname = $key;
$var = $old;

echo "

";
		if($info != FALSE) echo "$info:";
		self::do_dump($var, '$'.$vname);
		echo "

";
}

function do_dump($var, $var_name = NULL, $indent = NULL, $reference = NULL)
{
$do_dump_indent = "|    ";
$reference = $reference.$var_name;
$keyvar = 'the_do_dump_recursion_protection_scheme'; $keyname = 'referenced_object_name';

if (is_array($var) && isset($var[$keyvar]))
{
$real_var = &$var[$keyvar];
$real_name = &$var[$keyname];
$type = ucfirst(gettype($real_var));
echo "$indent$var_name $type = &$real_name
";
}
else
{
$var = array($keyvar => $var, $keyname => $reference);
$avar = &$var[$keyvar];

$type = ucfirst(gettype($avar));
if($type == "String") $type_color = "";
elseif($type == "Integer") $type_color = "";
elseif($type == "Double"){ $type_color = ""; $type = "Float"; }
elseif($type == "Boolean") $type_color = "";
elseif($type == "NULL") $type_color = "";

if(is_array($avar))
{
$count = count($avar);
echo "$indent" . ($var_name ? "$var_name => ":"") . "$type ($count)
$indent(
";
$keys = array_keys($avar);
foreach($keys as $name)
{
$value = &$avar[$name];
self::do_dump($value, "['$name']", $indent.$do_dump_indent, $reference);
}
echo "$indent)
";
}
elseif(is_object($avar))
{
echo "$indent$var_name $type
$indent(
";
foreach($avar as $name=>$value) self::do_dump($value, "$name", $indent.$do_dump_indent, $reference);
echo "$indent)
";
}
elseif(is_int($avar)) echo "$indent$var_name = $type(".strlen($avar).") $type_color$avar
";
elseif(is_string($avar)) echo "$indent$var_name = $type(".strlen($avar).") $type_color\"$avar\"
";
elseif(is_float($avar)) echo "$indent$var_name = $type(".strlen($avar).") $type_color$avar
";
elseif(is_bool($avar)) echo "$indent$var_name = $type(".strlen($avar).") $type_color".($avar == 1 ? "TRUE":"FALSE")."
";
elseif(is_null($avar)) echo "$indent$var_name = $type(".strlen($avar).") {$type_color}NULL
";
else echo "$indent$var_name = $type(".strlen($avar).") $avar
";

$var = $var[$keyvar];
}
}
}
//use it like below
$var = array('key'=>'value');
Util::dump($var,'Dump of $var');
[/code]

Greetings!