begin process at 2012 05 29 02:19:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Réseau & Internet

 > 

Autre

 > 

Convertion d'une fonction Delphi en Php


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Convertion d'une fonction Delphi en Php

lundi 16 avril 2007 à 11:27:23 | Convertion d'une fonction Delphi en Php

wismerhill40

Bonjour a tous !
JE debute dans le Php et je dois dire que j'ai un peu de mal mais je dois utiliser cette fonction ecrite en delphi sur une page HTML .

function MacStr(const AMac : int64) : string;
var
  pR : PChar;
  pB : ^byte;
  N  : integer;
const
  BTC : array[$0..$F] of char = '0123456789ABCDEF';
begin
  pB := @AMac;    {pointe l'@ mac}
  inc(pB,5);
  SetLength(Result, 17);  {chaine de 17 caractères en sortie 6 octets de 2 caractères + 5 sépararteus}
  pR := PChar(Result);
  inc(pr,15);       {pointe le résultat}
  for N := 0 to 5 do
  begin
    if N >0 then
    begin
      pR[0] := '-';
      dec(pR,2);
    end;

    pR[0] := BTC[ pB^ shr 4 ];       {décale la valeur binaire de @Mac de 4 vers la droite = division par 2^4 soit 16}
    pR[1] := BTC[ pB^ and $F ];
    dec(pB);
    dec(pR, 1);

  end;
end;

Pour la petite histoire ca me permet de remettre en forme une adresse MAC en entier sous forme Hexa.

Mais j'ai beaucoup de mal avec les pointeurs sous Php...

voila si quelqu'un y arrive

Merci d'avance !
Vive le monde du libre }:)

Vive le monde du libre }:)
lundi 16 avril 2007 à 12:28:23 | Re : Convertion d'une fonction Delphi en Php

lesdis

Bonjour,

Je ne suis pas sur que tout le monde comprenne le delphi ici. Serait-il possible de décrire précisement ce que tu attends de ta fonction stp? (donnée en entrée, donnée en sortie ainsi que le format...)


mardi 17 avril 2007 à 19:07:46 | Re : Convertion d'une fonction Delphi en Php

wismerhill40

Bonjour ...

Oui pas de souci

Cette fonction me permet de rentrer un grand chiffre d'une bonne 10aine de numeros. Je cherche a obtenir un traitement qui me permettra d'obtenir, a partir de ce numero, l'adresse MAC en hexa 4F:45:6B ...car je ne l'ai pas dis mais ce numero est en fait une adresse MAC ! voila !

Vive le monde du libre }:)
mercredi 18 avril 2007 à 14:36:22 | Re : Convertion d'une fonction Delphi en Php

lesdis

Désolé de ne répondre que maintenant mais je n'avais plus suivit la discussion.

Voici une petite fonction, qui je l'espère correspond à tes attentes. Elle attend une chaîne de bit en entrée et ressort une chaîne d'hexadécimal avec un tiret entre chaque octet (format de l'adresse mac) :

<?php
  function MacStr($AMac){

  $adresse_mac = array();
  // Tableau contenant la conversion binaire -> hexa
  $hex = array(   0    => "0",
                  1    => "1",
                  10   => "2",
                  11   => "3",
                  100  => "4",
                  101  => "5",
                  110  => "6",
                  111  => "7",
                  1000 => "8",
                  1001 => "9",
                  1010 => "A",
                  1011 => "B",
                  1100 => "C",
                  1101 => "D",
                  1110 => "E",
                  1111 => "F");
                 
   $lenght = strlen($AMac); // on récupère la taille de la chaîne de caractère
  
   for($x = $lenght-4; $x >= 0;$x -= 4){ // on travail sur la chaîne en partant du dernier caractère

    $index = substr($AMac,$x,4)*1;  // on parse en int (je n'ai pas trouvé mieux pour le faire )

    array_push($adresse_mac,$hex[$index]); //on ajoute le quartet dans le tableau
   
    if ($x % 8 == 0 && $x != 0){ // on ajoute un tiret à chaque octet sauf pour le dernier
      array_push($adresse_mac,"-");
    }
   }
  
  $adresse_mac = array_reverse($adresse_mac); // on inverse le tableau pour afficher l'adresse dans le bon sens
  return implode("",$adresse_mac); // on convertit le tableau en string et on renvoit la chaîne

  }

  // appel de la fonction et affichage de la valeur de retour
  echo MacStr("111100001010100001110011");
?>


Bonne prog


Cette discussion est classée dans : fonction, pb, php, delphi, pr


Répondre à ce message

Sujets en rapport avec ce message

JAVASCRIPT et PHP...ca colle pas [ par Sinse2004 ] Bonjour, J`ai un pb avec le php dans une fonction javascript.Dans un fichier , j`ai 2 fonctions javascript qui contiennent chacune du javascript et de Pb avec la fonction date() [ par hasen ] Bonjour, bonjour. Y'a un petit truc qui me chagrine : je veux recuperer la date du jour dans mon code php, alors j'utilise la ligne date("d-m-y") afin Pb fonction mail() [ par yoarf ] Bonjour,J'utilise une fonction mail() en php qui me permet d'envoyer la newsletter à mes abonnés.Depuis le déménagement du serveur et réinstallation d Pb de php dans une fonction Javascript [ par lerenard80 ] Voici ma page : function test(valeur) { var w = new ActiveXObject("WScript.Shell"); w.run ('"c:\\progra~1\\easyph~1.0\\www\\acl\\test.bat" connexion entre page php et fonction JS [ par jagogordonne ] Bonjour, je vais tenter d'expliquer mon problème. J'ai une page avec un formulaire qui contient un et lorsque je change ce select je récupère l'id d comment faire une fonction en php 5 [ par walidzan ] Bonjour je suis debutant en php 5; je vais faire un classe et une fonction article pour afficher des articles j'ai reussi de faire la connexion au ba Comment utiliser la fonction mail() dans PHP? [ par kamel_521 ] hi Comment utiliser la fonction mail() dans PHP? je entrain de développer un site web en freelance, et je veux configurer la fonction mail() pour envo Envoi de mail avec fonction php [ par tagadax ] Bonjour tout le monde, je souhaiterai pouvoir integrer un formulaire dans mon site internet, et ce formulaire permettrait d'envoyer un mail... Il y a Exécuter une fonction php après le chargement de la page [ par laurent2008 ] Bonjour, j'ai un formulaire avec des champs, je m'interesse plus particulirement au deux champs suivants : d_nais et age d_nais date de naissance au f Pb preg_replace php [ par ingcool ] je veux remplacer les chiffres d'un compteur de visite par des images qui porte la même valeur mais en vain, besoin d'aide SVP


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales