Zahl in Wort umwandeln

  • Hi,
    Wie wandle ich eine Zahl in php als Wort um?


    Bei mir ist es so es wird in der falls es gelöscht ist 1 angezeigt und wenn nicht 0
    Jetzt möchte ich das in eine Tabelle einfügen nur möchte nicht das Da eine Zahl steht
    sondern Nein oder Ja.


    Wie mache ich das?


    Vergessene Scriptsprache zu sagen


    PHP :D

  • Naja einfach so:


    PHP
    $name = ($zahl == 0) ? "Nein" : "Ja";
    //Und jetzt $name in die Tabelle eintragen lassen


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • $name = ($zahl == 0) ? "Nein" : "Ja";


    Warum so unnötig kompliziert? Logische Ausdrücke über ihre Verneinung zu berechnen bzw. zu überprüfen ist meiner Meinung eine nach der schlechtesten Programmierangewohntheiten, die es gibt. Man sollte immer versuchen, seinen Programmcode so einfach und verstehbar wie möglich zu halten.


    PHP
    $name = $zahl ? "Ja" : "Nein";
    • Offizieller Beitrag

    Du hast nichts anderes gemacht, abgefragt ob $zahl positiv also 1 ist.
    Dadurch wurde nur (%s == 0) erlöst. Was wäre wenn die Person Zahl 3 und 4 hat?
    Richtig, dann muss man dies so anwenden. Dann lieber so zeigen, dass die
    Person es auch mit anderen zahlen ausüben kann.
    Meiner Meinung nach beides unkompliziert, wenn jemand die obere Anwendung nicht
    versteht, dann wird er bestimmt auch deine Art der Anwendung nicht verstehen.

  • Du hast nichts anderes gemacht, abgefragt ob $zahl positiv also 1 ist.

    Ich hab abgefragt, ob der Wert von $zahl wahr (= nicht falsch, also nicht 0) ist. Bei solchen Aussagen werde ich ja ganz schnell misstrauisch, besonders, wenn in der Signatur steht, man sei C-Entwickler.
    -20 ist in PHP auch wahr, obwohl -20 ja eindeutig eine negative Zahl ist.


    Dadurch wurde nur (%s == 0) erlöst. Was wäre wenn die Person Zahl 3 und 4 hat?

    Natürlich wurde das nur erlöst, genau das war ja auch mein Ziel. Man könnte ja auch schreiben

    PHP
    $wort = (!(!($zahl != 0)) && 1) ? "Ja" : "Nein";


    Es wäre auch richtig, nur ist es einfach eine schlechte Angewohnheit, Programmcode unnötig lang und damit unverständlich zu machen.
    Zum Thema 3 und 4: Erstens wurde vom TE explizit gesagt, dass dieser Fall nicht auftreten wird (Es kann ja nur gelöscht oder nicht gelöscht worden sein und irgendwo muss man ja auf die Rückgabewerte von Funktionen vertrauen). Zweitens würde in diesem Fall (dass in der Funktion etwas falsches wie 3 oder 4 zurückgegeben wird) einfach "Ja" ausgegeben werden, was auch logisch ist.



    Richtig, dann muss man dies so anwenden. Dann lieber so zeigen, dass die
    Person es auch mit anderen zahlen ausüben kann.

    Wie geschrieben, es kann nur "Ja, etwas wurd gelöscht" und "Nein, etwas wurde nicht gelöscht" angezeigt werden. Dabei sollten nie Werte wie 3 oder 4 auftreten - und falls diese hier doch einmal auftreten, dann werden sie (so, wie in jeder Programmiersprache üblich) als Erfolg, weil sie für den Computer "wahr" sind, gewertet --> Es wird angezeigt, dass der Löschvorgang erfolgreich war.




    Meiner Meinung nach beides unkompliziert, wenn jemand die obere Anwendung nicht
    versteht, dann wird er bestimmt auch deine Art der Anwendung nicht verstehen.


    Darum, ob der Code von unerfahrenen Programmierern verstanden wird oder nicht, sollte man sich wirklich keine Gedanken machen. Darum, wie man das, was man erreichen möchte, am einfachsten und elegantesten macht, und wie andere erfahrene Programmierer es am schnellsten verstehen können, schon. Und da ist nunmal

    PHP
    $name = $zahl ? "Ja" : "Nein";

    (direkter Ausdruck, ohne Umschweife)
    besser als

    PHP
    $name = ($zahl == 0) ? "Nein" : "Ja";

    (einmal verneint)
    was aber trotzdem besser ist als

    PHP
    $wort = (!(!($zahl != 0)) && 1) ? "Ja" : "Nein";

    (zweimal verneint und unnötige Dinge wie "!= 0" und "&& 1")

    3 Mal editiert, zuletzt von oernqsvfu_fgvaxg ()

    • Offizieller Beitrag

    C-Entwickler

    Das C Steht für meinen Namen...
    Wenn du dir meine Signatur richtig angesehen hättest würdest du auch sehen, dass zu meinen Kenntnissen C nicht
    dazu zählt. Das Beispiel mit 3 und 4 bezog Ich auf die Allgemeinheit und nicht auf das beispiel vom TE.


    Ich habe nie behauptet, dass deine Anwendung falsch oder schlecht sei, Ich habe legentlich behauptet, dass die Anwendung von
    Kaliber nicht kompliziert ist, es ist ganz dem Entwickler wie er arbeitet, ob "leicht verständlich" oder 5 Zeichen mehr.

  • Erstmal ist die Lösung doch egal? Braucht also hier jetzt nicht zu Disskutieren. BTW Edgar: Wo lernt man denn die Sprache "Personal Home Page"? Und jetzt komm nicht mit Oberschlauen Antworten, ich weiß das das der Alte Name von PHP ist, der seit Jahren aber nicht mehr der richtige ist. Hypertext Preprocessor ist der richtige Name, soviel aber nun zu deinem "Entwickler"

    Mit freundlichen Grüßen
    Developer
    Go/Python Developer | ehm. Webdeveloper | Fachinformatiker Anwendungsentwicklung
    Arbeitet in einem cloudigen Umfeld bei einem der größten deutschen Rechenzentrumsbetreibern