Avatar billede bigo Nybegynder
23. august 2004 - 16:19 Der er 9 kommentarer og
1 løsning

"udfyld" resten af ipnummer

Hejsa.

Jeg leder efter en funktion som kan manipulere med en ipadresse.

dvs. f.eks. en del af den kunne være 10.4. eller f.eks. 192.168 eller 192.168. og så skal resten udfyldes med 0.0 eller 255.255 afhængig af type(sendes med i kaldet til funktionen)

nogen der kan hjælpe mig her..
Avatar billede detox Nybegynder
23. august 2004 - 16:24 #1
Det skulle ikke være så svært. Er der nogen gange punktum for enden og andre gange ikke? Som her: 192.168 eller 192.168.
Avatar billede bigo Nybegynder
23. august 2004 - 16:35 #2
jepper det mangler ind imellem
Avatar billede detox Nybegynder
23. august 2004 - 16:37 #3
Ok prøv den her:

function restIP($ip, $mode) {
    $ip = preg_replace("/\.$/", "", $ip);
    switch ($mode) {
    case 0:
          return $ip . ".000.000";
    break;
    case 1:
          return $ip . ".255.255";
    break;
    default:
        return false;
    }
}

echo restIP('192.168.', 1); // eksempel
Avatar billede bigo Nybegynder
23. august 2004 - 16:38 #4
men hvad nu hvis der kun står 192. eller 192
eller for den sags skyld 192.168.3 eller 192.168.3.

Det er sådan noget jer er oppe imod.
Avatar billede detox Nybegynder
23. august 2004 - 16:42 #5
Arh, det fremgik ikke helt af spørgsmålet ;o)
Avatar billede bigo Nybegynder
23. august 2004 - 16:43 #6
narj, det gjorde det jo faktisk ikke.. sorry
Avatar billede detox Nybegynder
23. august 2004 - 16:58 #7
Prøv denne:

function restIP($ip, $mode) {
    $ip = preg_replace("/\.$/", "", $ip);
    preg_match_all("/\./", $ip, $match);
    $mangler = 3 - count($match[0]);
    switch ($mode) {
    case 0:
          $str = '.000';
        //return $ip . ".000.000";
    break;
    case 1:
          $str = '.255';
    break;
    default:
        $str = '';
    }
    for ($i=0;$i<$mangler;$i++) {
        $ip .= $str;
    }
    return $ip;
}
Avatar billede detox Nybegynder
23. august 2004 - 17:02 #8
Lidt pænere (måske):

<?php
function restIP($ip, $mode) {
    $ip = preg_replace("/\.$/", "", $ip);
    preg_match_all("/\./", $ip, $match);
    $per = count($match[0]);
    switch ($mode) {
    case 0:
          $str = '.000';
        //return $ip . ".000.000";
    break;
    case 1:
          $str = '.255';
    break;
    default:
        $str = '';
    }
    for ($i=3;$i>$per;$i--) {
        $ip .= $str;
    }
    return $ip;
}
echo restIP('192.', 1); // eksempel
?>
Avatar billede bigo Nybegynder
23. august 2004 - 17:11 #9
Helt kanon. Takker og bukker.
Avatar billede detox Nybegynder
23. august 2004 - 17:20 #10
Velbekommen.
Ps:    //return $ip . ".000.000"; er bare fyld
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester