Ankündigung

Einklappen
Keine Ankündigung bisher.

Eingabe = Oktal?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • freq.9
    hat ein Thema erstellt Eingabe = Oktal?.

    Eingabe = Oktal?

    Wie kontrolliere ich am besten ob die Eingabe (1. Parameter meiner Funktion) wirklich ein Oktalwert ist? Ich kenne nun keine native PHP Funktion, die mir da weiterhilft. Kennt da vllt. doch jmd eine native Funktion oder kann mir da weiterhelfen?

  • Gast-Avatar
    Ein Gast antwortete
    Dann steht das also schon literal im Skript und ist garkeine Eingabe.

    Einen Kommentar schreiben:


  • freq.9
    antwortet
    Zitat von freq.9
    Ja solange es ein String ist, ists auch Okay aber es soll wie folgt übergeben werden:

    Code:
    foo(0777);
    Und da kommt in der Funktion ja schon 511(dez) anstatt von 0777(okt) an.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Das war nicht meine Frage.
    Um was für eine Eingabe handelt es sich? Kommt der Wert zB per HTML Formular zum Skript oder per stdin oder oder oder?

    Einen Kommentar schreiben:


  • freq.9
    antwortet
    Zitat von karl-150
    Zitat von Bruchpilot
    Oktal, Dezimal, Hexadezimal, binär ... das sind nur Darstellungsformen
    Ja, aber kommt 0144 bzw. 100 nicht als String sondern als Integer/Dezimalzahl an.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Zitat von Bruchpilot
    Oktal, Dezimal, Hexadezimal, binär ... das sind nur Darstellungsformen

    Einen Kommentar schreiben:


  • freq.9
    antwortet
    f(0777)... dann mach du mal echo $oo in der Funktion... Um was wetten wir, dass da dann nicht 0777 zurückgegeben wird.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    die mir sagt, ob die eingabe oktal war
    Und die Eingabe kommt nicht als Zeichenkette beim Skript an?

    Einen Kommentar schreiben:


  • freq.9
    antwortet
    Okay, da fällt mir grad mal wieder ein, dass meine eigentliche Aufgabe eine Funktion zu schreiben, die mir sagt, ob die eingabe oktal war, aber ich glaube, dass es schon seinen Sinn hat, dass es keine native Funktion von PHP gibt, die diese Frage beantwortet.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Hm scheinbar kann man bei chmod() die oktale sowie die dezimale Schreibweise verwenden.
    klar kannst Du das. Oktal, Dezimal, Hexadezimal, binär ... das sind nur Darstellungsformen und kümmern (von Zeichenketten abgesehen) die Funktionen kein Stück.

    Einen Kommentar schreiben:


  • freq.9
    antwortet
    Code:
    function f($oo) {
        return decoct($oo);
    }
    
    var_dump(f(0144)); // 144
    var_dump(f(100)); // 144
    Hm scheinbar kann man bei chmod() die oktale sowie die dezimale Schreibweise verwenden. Also sollte ich dies auch als Vorteil nutzen können. Nun mal nachschauen in wieweit dies in meine Funktion passt.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    Dann musst Du ihn, wenn Du ihn ausgibst eben konvertieren.

    http://de.php.net/decoct

    Einen Kommentar schreiben:


  • freq.9
    antwortet
    Ja solange es ein String ist, ists auch Okay aber es soll wie folgt übergeben werden:

    Code:
    foo(0777);
    Und da kommt in der Funktion ja schon 511(dez) anstatt von 0777(okt) an.

    Einen Kommentar schreiben:


  • Gast-Avatar
    Ein Gast antwortete
    "von Anfang bis Ende nur Zeichen zwischen 0 und 7 (einschließlich)"
    PHP-Code:
    <?php
    $eingabe 
    '1230';

    if(
    preg_match('!^[0-7]+$!'$eingabe)) {
        echo 
    'ist oktal';
    }
    else {
        echo 
    'ist nicht oktal';
    }
    ?>

    Einen Kommentar schreiben:

Lädt...
X