Conversie cod culori din Hexadecimal in RGB folosind PHP


function hex2rgb($hexCode) {
$hexCode = str_replace("#", "", $hexCode);

if(strlen($hexCode) == 3) {
$r = hexdec(substr($hexCode,0,1).substr($hexCode,0,1));
$g = hexdec(substr($hexCode,1,1).substr($hexCode,1,1));
$b = hexdec(substr($hexCode,2,1).substr($hexCode,2,1));
} else {
$r = hexdec(substr($hexCode,0,2));
$g = hexdec(substr($hexCode,2,2));
$b = hexdec(substr($hexCode,4,2));
}
$rgbCode = array($r, $g, $b);
return $rgbCode; // intoarce un array cu valorile [0]=R, [1]=G, [2]=B
}


$rgbArr = hex2rgb("#ffffff");
$rgb =implode(",", $rgbArr ); // intoarce valorile RGB separate prin virgula

Aplicabilitate
Setare culoare background dinamic cu opacitati diferite:

<style>

.fullOpacity{background:rgb(<?php echo($rgb); ?>)}
.halfOpacity{background:rgba(<?php echo($rgb); ?>, 0.5)}
.minOpacity{background:rgba(<?php echo($rgb); ?>, 0.1)}
.higherOpacity{background:rgba(<?php echo($rgb); ?>, 0.8)}
…..
</style>

Trimiterea de emailuri din PHP folosind autentificare SMTP

1. Creati fisierul emailtest.php
2. Copiati codul urmator in fisierul creat la 1)

";
$to = "Receiver";
$subject = "Test";
$body = "Email sent";
$host = "webiste_domain.com";
$username = "no-reply@webiste_domain.com";
$password = "password of the no-reply email account";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("

" . $mail->getMessage() . "

");
} else {
echo("

Message successfully sent!

");
}
?>

3. Salvati fisierul si copiati-l in radacina site-ului
4. accesati fisierul in browser folosid calea directa. Ex: www.webiste.com/emailtest.php
5. In cazul in care nu au aparut erori se va afisa un mesaj de succes. Emailul va fi trimis catre adresa specificata
6. In cazul in care au aparut erori acestea vor fi afisate in pagina.
6.1 Daca eroarea este legata de serverul de smtp solicitati aceasta informatie de la provederul de hosting.

Scrierea instructiunilor pentru instalarea / utilizarea unei aplicatii.

O corvoada in general, nu-i asa? Ce poate fi atat de greu sa urmezi “aceste instructiuni simple” cand totul merge aproape de la sine?
Ei bine, privind din partea cealalta, a persoanei care trebuie sa le urmeze, am avut o revelatie.
Citind un set de instructiuni vagi esti pus is situatia fie de a recunoaste ca esti incapabil sa intelegi ceva “atat de simplu” fie sa consideri ca cel care le-a scris nu a facut o treaba deloc stralucita.
ADN-ul tau va prostesta vehement in fata primei optiuni drept pentru care nu iti mai ramane altceva de facut decat sa soliciti mai multe detalii, sa pui intrebari, sa ceri lamuriri.
Daca dupa ce primesti un document actualizat esti la fel de nedumerit ca prima data deja ti se creeaza un sentiment de frustare, capeti o atitudine ostila fata de autorul acelor texte fara noima si ceri refacerea lor pe un ton ceva mai artagos.
In cazul in care ajungi la a treia incercare cel mai probabil ai sa renunti la a utiliza ceva atat de prost facut, atat de incalcit si vei opta pentru ceva mai simplu.

Pentru a nu ajunge in situatia in care un proiect va este refuzat din motivele expuse mai sus am sa mentionez o lista de sfaturi pentru a preveni unele dintre problemele ce pot aparea:
1. Incepe cu o scurta descriere , 2-3 fraze in care sa expui ce face aplicatia in beneficiul utilizatorului, de ce ii este necesara;
2. Listeaza instructiunile de configurare, cerintele necesare functionarii aplicatiei incepand fiecare propozitie cu un verb;
3. Nu da optiuni acolo unde nu este cazul. Asta il va obliga pe utilizator sa gandeasca, sa aleaga, iar utilizatorul nu vrea asta, a platit pentru ceva ce trebuie sa mearga;
3.1. Denumeste valoarea implicita iar in cazul in care mai multe variante sunt posibile, enumerale la sfarsit.
4. Nu da detalii inutile pentru utilizatorul final. Nu are niciun interes in complexitatea procedurilor din spatele aplicatiei. Daca va avea astfel de curiozitati o sa le ceara ulterior;
5. Nu amesteca ideile. Daca ai considerat ca sunt necesare detalii suplimentare despre anumite functionalitati, scrie-le separat si fa trimitere la ele;
6. Fa o lista cu probleme cunoscute. Nimic nu este mai neplacut decat ca utilizatorul sa descopere disfunctionalitati. Arata-i ca le cunosti si va avea incredere ca le vei rezolva acolo unde este posibil.

Scopul tau nu este sa ii arati utilizatorului final ca este incapabil, scopul tau este sa ii oferi o unealta care sa il ajute, sa ii rezolve problemele si care sa ii arate cat esti tu de capabil. Cel mai probabil va apela la serviciile tale si pe viitor si asta este ceea ce iti doresti, nu-i asa?