Bonjour. visiteurs jour : 199       Au président     Beauté santé     Infos loisirs     Ensemble      Jean      Informatique     Einstein     Santé corona

Les joies de l'informatique et de l'internet !





Coucou et merci


  Accueil - Disques - Excel - Informatique - Infos - Internet - Javascript - logiciels  - Programation - Sites RJ - Vidéo - Plan du site -



   

 

PHP

Généralités

Nombres, valeur absolue,partie entière et partie décimale

 

Valeur absolue  $n_abs= abs($n)

Partie entière  $entier=intval(abs($c)); 

Partie décimale seule  $decimale=abs($c) - intval(abs($c));

Réduire la partie décimale à deux chiffre après la virgule, $decimale2=sprintf("%.2f",$decimale); 

 

Conversion décimal hexadécimal octal binaire

 

Décimal binaire soir $dec en décimale et $bin en valeur binaire

$bin=decbin($dec) ;    affiche la valeur binaire 10000000  (8 bits)

$dec=bindec($bin) ;

 

Décimal hexadé »cima soit $hex en hexadécimal

$hex=dechex($dec)

$dec=hexdec($hex

 

dechex() - Convertit de décimal en hexadécimal

bindec() - Convertit de binaire en décimal

octdec() - Conversion d'octal en décimal

base_convert(nombre, de ,vers) - Convertit un nombre de la bases de vers la base vers

exemple

$binaire=base_conver($hexa,16,2)  converti $hexa de la base 16 (hexa) vers la base 2 (binaire)

 

Convertir décimales/ hexadécimale en couleurs RVB

function HEX_vers_RVB($couleur_hex) {

   $rouge = substr($couleur_hex, 0, 2);

   $vert = substr($couleur_hex, 2, 2);

   $bleu = substr($couleur_hex, 4, 2);

   $rvb=array('Rouge'=>hexdec($rouge),'Vert'=>hexdec($vert),'Bleu'=>hexdec($bleu));

   return $rvb;

}

function RVB_vers_HEX($r, $g, $b) {

    $rouge = substr("0".dechex($r),-2); // on complète avec zéro à gauche

    $vert = substr("0".dechex($g),-2);

    $bleu = substr("0".dechex($b),-2);   

    return strtoupper($rouge.$vert.$bleu);

}

EXEMPLE d’utilisation de ces 2 fonctions

Convertir #EFAC9D en Rouge = 239 Vert = 172 Bleu = 157

$t_rvb=HEX_vers_RVB('EFAC9D');

echo 'Rouge = '.$t_rvb['Rouge'].' Vert = '.$t_rvb['Vert'].' Bleu = '.$t_rvb['Bleu'];

 

Convertir 239 172 157 en #CA0000

echo '#'.RVB_vers_HEX(239, 172, 157);

 

 

Tirer un nombre au hasard

// initialiser le générateur

srand((double)microtime()*1000000); // initialise

srand() ; srand(microtime()) ;

$n=rand() ; donne un nombre compris entre 0 et 1 avec olein de décimales

$n=rand($deb,$fin); $n=rand(0,33); // tire un nombre entre 0 et 33

microtime: Retourne le timestamp UNIX actuel avec les microsecondes - (PHP 4, PHP 5)

mt_srand: Initialise une meilleure valeur aléatoire - (PHP 4, PHP 5)

echo: Affiche une chaîne de caractères - (PHP 4, PHP 5)

mt_rand: Génère une meilleure valeur aléatoire - (PHP 4, PHP 5)

// 1. La fonction md5(); génére un nombre au hasard

// 2. Ce nombre sera unique grâce à uniqid();

// 3. Ensuite il sera remélangé grâce à rand();

$hash=md5(uniqid(rand()));

 

Boucles, foreach

boucle Foreach

cas banal :

$array = array( 1, 1, 2, 3, 5, 8, 13 );

foreach( $array as $value )

echo $value . '<br />';

Foreach est utile pour les tableaux associatifs inaccessibles par un indice mais par le nom de leur élément

Exemple :

$array = array( 'premier' => 'N° 1', 'deuxieme' => 'N° 2', 'troisieme' => 'N° 3');

Pour accéder au deuxième élément faire : $array['deuxieme'] ;

foreach( $array as $value ) // on parcourt $array, la valeur de l'item courant est copiée dans $value

echo $value . ' - '; // affichage

Affiche: N° 1 - N° 2 - N° 3 -

La seconde version de foreach permet de connaître, en plus de la valeur de l'élément courant, sa clé:

$array = array( 'premier' => 'N° 1', 'deuxieme' => 'N° 2', 'troisieme' => 'N° 3');

foreach( $array as $key => $value )

echo 'Cet élément a pour clé "' . $key . '" et pour valeur "' . $value . '"<br />';

Cette boucle pourrait nous permettre d'afficher tous les éléments du tableau superglobal $_SERVER:

foreach( $_SERVER as $key => $value )

echo '$_SERVER['' . $key . ''] =' . $value . '<br />';

Affiche:

$_SERVER['HTTP_HOST'] =localhost

$_SERVER['HTTP_USER_AGENT'] =Mozilla/5.0 (Windows; U; Windows NT 5.0; fr; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1

...

Vous remarquerez que l'on ne met pas les [ ] de $_SERVER! Retenez cet exemple de code, il vous permettra un jour d'afficher le contenu de $_POST, $_GET ou encore $_SESSION, ce qui peut parfois s'avérer très utile pour déceler un bug ou une valeur incorrecte dans un script, :) .

On peut aussi imbriquer des boucles foreach, exemple d'un tableau à deux dimensions:

$array = array( 'fruits' => array( 'pommes', 'tomates', 'abricots' ),

'animaux' => array( 'chats', 'chiens' ),

'pays' => array( 'Suisse', 'France', 'Angleterre' ) );

foreach( $array as $key => $value ) {

echo $key . ': <br />';

foreach( $value as $valeur )

echo ' ' . $valeur . '<br />';

echo '<br />';

}

Affiche:

fruits:

pommes

tomates

abricots

animaux:

chats

chiens

pays:

Suisse

France

Angleterre

La boucle Do-while

La boucle while examine la condition avant la boucle tandis que pour la boucle do-while l’examine à la fin. Ainsi, même si cette condition n'est pas vérifiée, la boucle s'exécutera au moins une fois!

$i = 1;

do {

echo $i . ' * ';

$i++;

} while( $i < 4 );

?>

Affiche: 1 * 2 * 3 *

Vous remarquerez le « ; » à la fin de la ligne contenant le while, contrairement à la version while!

$i = 1;

do {

echo $i . ' * ';

$i++;

} while( $i < 1 );

?>

Affiche: 1 * car la boucle est exécuté une fois avant de savoir que la condition n’est pas remplie

Break permet de sortir d’une boucle

While ($i<10) {

If ($toto[$i]=’trouvé’) break ;

$i++ ;

}

Boucle for

Instruction continue

Continue permet de sauter les instructions qui restent jusqu'à la fin de la boucle et de reprendre à la condition de boucle :

for( $i = 0; $i < 4; $i++ ) {

echo 'A';

if ($i==2) continue;

echo 'B - '; // cette instruction ne sera pas exécutée pour i=2

}

?>

Affiche: AB – AB - AAB -

Instructions if imbriquées à remplacer par switch

/***************************Blocs d'instruction***************************/

/*Signalons que si l'ordre est primordial dans une floppée de if

Il n'a plus d'importance dans un blocs d'instructions ! On peut utiliser l'ordre chronologique/*/

switch($bloc){

case 'accueil':

//toutes les instructions de présentation du formulaire1

break;

case 'traiteform1':

//toutes les instructions de traitement du formulaire1

//appel fonction machin

//présentation du form2

break;

case 'traiteform2':

//toutes les instructions de traitement du formulaire2

//appel fonction truc

break;

case 'insertionbase':

//appel fonction connexion

//toutes les modifications de base de données

}

Serveur de mail avec easyphp

Dans le répeertoire apache : fichier php.ini

Rechercher le passage suivant et remplacer le smpt = localhost par celui de son fournisseur d’accès

Exemple :

[mail function]

; For Win32 only.

;SMTP = localhost

;SMTP = smtp.neuf.fr

SMTP = smtp.free.fr

; For Win32 only.

sendmail_from = me@localhost.com

 



 

 

 

 

 

 

-
vues  771     En ligne actuellement :   3   Total des clics  1665289