Zu den Aufzeichnungen der tutorials.de-Live-Workshops
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
247
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    redX redX ist offline Mitglied Brokat
    Registriert seit
    Nov 2003
    Beiträge
    464
    Wie das Topic schon sagt, wie handelt PHP den Wert false?
    Ich frag mich das einfach, da nichts ausgegeben wird, wenn ich die Variable anzeigen möchte.

    Ich möchte einfach den Wert true oder false in die DB speichern. Aber false steht dort niemals drin:

    PHP-Code:
                DB::query("
                    INSERT INTO `arena_event_history` (
                        `id` ,
                        `turn` ,
                        `fs_arena_users` ,
                        `location` ,
                        `creation_time` ,
                        `params`,
                        `completed`
                    ) VALUES (
                        NULL,
                        '" 
    Event_History::$turn "',
                        '" 
    $_SESSION["loginUser"] . "',
                        '" 
    $this->getLocationName() . "',
                        '" 
    $this->getCreationTime() . "',
                        '" 
    $this->paramsToString() . "',
                        '" 
    $this->isCompleted() . "'
                    )
                "
    ); 
    Also das $this->isCompleted gibt mir entweder true, oder nichts zurück.

    Sogar das gibt mir nichts aus:
    PHP-Code:
        $myVar false;
        echo 
    "save! [" $myVar "]"
    Wieso gibt das einfach nichts aus und nicht false? *sich am Kopf kratz*

    PHP Version: 5.1.2

    Gruss
    X
     
    Es gibt ein leben vor dem Tod

  2. #2
    Avatar von Flex
    Flex Flex ist offline (aka Felix Jacobi)
    tutorials.de Moderator
    Registriert seit
    Nov 2001
    Ort
    Wuppertal
    Beiträge
    5.295
    Blog-Einträge
    65
    Wenn du einen String in einer Variable speichern willst, dann musst du ihn mit Anführungszeichen oder Semikolon als String markieren...
    PHP-Code:
    $myVar "false";
        echo 
    "save! [" $myVar "]"
    Wenn du einfach nur $myVar = false; schreibst, wird die Variable 'gelöscht', arbeitet also wie die PHP Funktion unset().

    PHP-Code:
    <?php
    error_reporting
    (E_ALL);

    $test true;

    if(
    $test) echo "test: ".$test;

    ?>
    Wenn ich das teste, kommt übrigens nur das hier raus:
    PHP-Code:
    test
    Funktioniert also auch nicht ganz so wie du es willst, würde ich sagen.
    Geändert von Flex (10.07.06 um 14:09 Uhr)
     
    KIDS Kinderbetreuungsdienst
    Xing

    "When you play the game of thrones, you win or you die. There is no middle ground."
    by Cersei Lannister in "A Game Of Thrones"

  3. #3
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Der Boolesche Typ beschreibt nur einen Wahrheitswert. Daher gibt es bei Ausgaben dieses Typs auch nicht etwa „true“ oder „false“ ausgegeben. MySQL hat übrigens auch keinen booleschen Spaltentyp.
     
    Markus Wulftange

  4. #4
    redX redX ist offline Mitglied Brokat
    Registriert seit
    Nov 2003
    Beiträge
    464
    Okai. Dankeschön. Ist wiedermal etwas anderst als in Java

    Gruss
    X
     
    Es gibt ein leben vor dem Tod

  5. #5
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Zitat Zitat von Gumbo
    MySQL hat übrigens auch keinen booleschen Spaltentyp.
    ....
    MySQL 5.0 Reference Manual :: 11.1.1 Overview of Numeric Types
     

  6. #6
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.772
    Blog-Einträge
    5
    Hallo,

    Zitat Zitat von [Flex]
    Wenn du einfach nur $myVar = false; schreibst, wird die Variable 'gelöscht', arbeitet also wie die PHP Funktion unset().
    Wie bitte? Woher hast du denn das?

    PHP-Code:
    <?php

    $foo 
    'bar';
    $foo false;

    if (isset(
    $foo)) echo '$foo wurde nicht gelöscht.';

    ?>
    Grüße,
    Matthias
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

  7. #7
    Avatar von Flex
    Flex Flex ist offline (aka Felix Jacobi)
    tutorials.de Moderator
    Registriert seit
    Nov 2001
    Ort
    Wuppertal
    Beiträge
    5.295
    Blog-Einträge
    65
    Hmm, ich hatte es so getestet

    PHP-Code:
    <?php
    $test 
    false;

    if(
    $test) echo "test: ".$test;

    ?>
    Und da wird gar nichts ausgegeben... Vielleicht habe ich da etwas vorschnell geurteilt.
     
    KIDS Kinderbetreuungsdienst
    Xing

    "When you play the game of thrones, you win or you die. There is no middle ground."
    by Cersei Lannister in "A Game Of Thrones"

  8. #8
    Registriert seit
    Dec 2001
    Ort
    Bayern
    Beiträge
    5.772
    Blog-Einträge
    5
    Hallo,

    if prüft nicht, ob eine Variable gesetzt ist oder nicht, sondern ob der Wert des Ausdrucks true oder false ist (notfalls auch mit Casting). Eine nicht gesetzte Variable wird dabei als false interpretiert und nebei wird eine Notice geworfen („Undefined variable“).

    Grüße,
    Matthias
     
    „Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
    “For every complex problem, there is an answer that is short, simple and wrong.”
    “Pessimism is safe, but optimism is a lot faster!”


    Aktuelles Coding Quiz: #17 - Wörter kreuz und quer

Ähnliche Themen

  1. oncontextmenu="return false" onselectstart="return false"
    Von an_dy im Forum Javascript & Ajax
    Antworten: 8
    Letzter Beitrag: 29.07.06, 11:05
  2. "10.0" != "10" ergibt false?
    Von maxOn-line im Forum PHP
    Antworten: 4
    Letzter Beitrag: 19.04.06, 23:26
  3. onselectstart="return false" & Meldung
    Von LN5 im Forum Javascript & Ajax
    Antworten: 5
    Letzter Beitrag: 15.11.05, 21:11
  4. HTML, Frameset, Validator, Border="False" ?
    Von son gohan im Forum HTML & XHTML
    Antworten: 12
    Letzter Beitrag: 09.02.05, 20:33
  5. "IsValid" bleibt immer auf "false"
    Von Saber im Forum .NET Archiv
    Antworten: 8
    Letzter Beitrag: 03.02.04, 23:31