Ankündigung

Einklappen
Keine Ankündigung bisher.

Float vereinheitlichen

Einklappen

Neue Werbung 2019

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

  • mermshaus
    hat ein Thema erstellt Float vereinheitlichen.

    Float vereinheitlichen

    Diskussionsbeitrag zum Wiki Eintrag: Float vereinheitlichen.

    Die Diskussionsplattform des PHP.de Wiki wurde ins Forum integriert. Durch Klicken des Buttons "Antwort" kannst du an diesem Thema teilnehmen.

  • drsoong
    antwortet
    Danke!

    Einen Kommentar schreiben:


  • mermshaus
    antwortet
    https://github.com/php-de/php-de.github.io/issues/107

    Einen Kommentar schreiben:


  • drsoong
    antwortet
    Also, ich habe da jetzt irgendwo etwas eingetragen, muss aber sagen, dass die Benutzerführung bei github wahrscheinlich von absoluten Fachidioten geschrieben wurde. Trotz intensiver Suche war ich mir nie sicher, ob ich jetzt in dem Bereich bin, wo man zur Sache ein Issue eintragen kann. Zugegeben, ich habe auch nur 15 Minuten investiert. Gruß T.

    Einen Kommentar schreiben:


  • mermshaus
    antwortet
    Glaube schon ja. Das wäre zumindest auf dieser Seite: https://github.com/php-de/php-de.github.io/issues

    Da müsste ein „New“-Button sein so rechts-oben-ish.

    Wenn du Lust drauf hast, das auszuprobieren, keine falsche Scheu.

    Ansonsten kann das im Zweifel sicher auch wer anders kurz machen, wenn es von Interesse ist.

    Bei der Sache (Floats vereinheitlichen) muss man sich grundsätzlich halt fragen, wo das enden soll und ob man nicht irgendwann über was drüberbügelt, was eigentlich bloß ein Eingabefehler war und keine Art und Weise, Zahlen in der Inneren Mongolei anzugeben. Übertrieben gesagt.

    (Wobei „Space“ schon noch eher das Level der anderen Tausendertrennzeichen ist.)

    Einen Kommentar schreiben:


  • drsoong
    antwortet
    Zitat von tr0y Beitrag anzeigen
    Fehler bitte als Issue auf github melden, damit wir kein Ablage-Mikado spielen müssen.
    Würde ich ja gerne machen. Habe aber keine Erfahrung mit github. Wie melde ich da denn jetzt ein issue. Braucht man da ein Account?

    Einen Kommentar schreiben:


  • tr0y
    antwortet
    Fehler bitte als Issue auf github melden, damit wir kein Ablage-Mikado spielen müssen.

    Einen Kommentar schreiben:


  • drsoong
    antwortet
    Habe mich dem Thema gerade wieder zugewandt. Dabei ist mir aufgefallen, dass

    floatAutoDetect (github) und
    strToFloat (oben)

    nicht mit dem teilweise von Franzosen benutzen Leerzeichen als Tausendertrennzeichen klar kommen.

    Beide liefern false bei "1 000,1".

    get_float (github) macht es richtig.

    Einen Kommentar schreiben:


  • jspit
    antwortet
    Zitat von mermshaus Beitrag anzeigen
    Die (aktuellere) Version auf php-de.github.io enthält noch etwas mehr Gebastel:

    - http://php-de.github.io/jumpto/float-vereinheitlichen/
    ..und für mich sehr wertvolle Anregungen.

    PHP-Code:
    function strToFloat($s){
        if(! 
    preg_match('/^[\-+]?(?=.*[0-9])([0-9]|[\.,](?![\.,]))*$/',$s)) {
            return 
    false;
        }
        
    $rc strrpos(' '.$s,'.') > strrpos(' '.$s,',') ? ',' '.';
        
    $s2 str_replace($rc,'',$s);
        
    $s3 str_replace(',','.',$s2);
        if(
    is_numeric($s3)) {
            return (float)
    $s3 ;
        }
        return 
    $s == $s2 ? (float)str_replace('.','',$s3) : false;

    Der obige Code wurde komplett geändert. Für sinnlose Strings liefert die Funktion jetzt false. Einige Beispiele:
    Code:
    ",1"              -> float(0.1)
    "75"              -> float(75)
    "-34,197,679.43"  -> float(-34197679.43)
    "34.147.629,4"    -> float(34147629.4)
    "3414.629,"       -> float(3414629)
    "3.414.629.269"   -> float(3414629269)
    
    "3,41.629.269"    -> bool(false)
    "3,41y269"        -> bool(false)
    "3,,41.269"       -> bool(false)
    LG jspit

    Einen Kommentar schreiben:


  • drsoong
    antwortet
    Cool. Ich werde zukünftig auf jeden Fall auf einen dieser Ansätze aufbauen. Mein letzter eigener Ansatz hat in einem System mit Usermanagement - das Userland ist daher bekannt - 'zig Länderkürzel nach Kommadezimalstelle und Punktdezimalstelle sortiert vorgehalten...Ja, äh, hüstel. So habe ich das wohl gemacht, ehm.

    Einen Kommentar schreiben:


  • mermshaus
    antwortet
    Die (aktuellere) Version auf php-de.github.io enthält noch etwas mehr Gebastel:

    - http://php-de.github.io/jumpto/float-vereinheitlichen/

    Einen Kommentar schreiben:


  • drsoong
    antwortet
    Der Kern des Ansatzes liegt wohl im Auffinden des letzten nicht numerischen Zeichens. Das finde ich schon mal sehr smart. Insgesamt sehr nützlich.

    Wenn ich überlege, was ich mir da schon alles für Lösungsansätze habe einfallen lassen....

    Einen Kommentar schreiben:

Lädt...
X