Kann mal einer dieses "Array"-Verhalten erklären

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Kann mal einer dieses "Array"-Verhalten erklären

    Mein Kollege ist gerade darauf gestoßen:
    PHP Code:
    $bla 'blubber';
    // Ergib 'b'
    echo $bla['laber']; 
    Was soll das? Und wieso ist das so?

    Peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

  • #2
    Du kannst einzelne String-Zeichen wie Array-Elemente ansteuern. Da du aber einen String angibst, wird der zu int gejugglet, was 0 ergibt. Ist aber auch nichts neues.
    [FONT="Helvetica"]twitter.com/unset[/FONT]

    Shitstorm Podcast – Wöchentliches Auskotzen

    Comment


    • #3
      Originally posted by unset View Post
      Du kannst einzelne String-Zeichen wie Array-Elemente ansteuern. Da du aber einen String angibst, wird der zu int gejugglet, was 0 ergibt. Ist aber auch nichts neues.
      Haben wir mittlerweile auch vermutet. War aber keinem(!) von uns bekannt.

      Danke
      Peter

      EDIT:
      das mitt dem echo $bla[0] oder $bla[2] ist uns natürlich bekannt.
      Last edited by Kropff; 21-10-2010, 15:44.
      Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
      Meine Seite

      Comment


      • #4
        Seid ihr wohl Amateure
        [FONT="Helvetica"]twitter.com/unset[/FONT]

        Shitstorm Podcast – Wöchentliches Auskotzen

        Comment


        • #5
          Originally posted by unset View Post
          Seid ihr wohl Amateure
          Das hat nichts mit Amateuren zu tun. Sondern mit Logik. Und wirklich logisch ist das erst Mal nicht. Bei JavaScript hätte mit so was gerechnet. Aber PHP?

          Peter
          Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
          Meine Seite

          Comment


          • #6
            Natürlich ist das nicht logisch, wenn man keine Ahnung davon hat, wie PHP funktioniert. Aber in dem Fall ist man, wie ich ja schon sagte: Amateur
            [FONT="Helvetica"]twitter.com/unset[/FONT]

            Shitstorm Podcast – Wöchentliches Auskotzen

            Comment


            • #7
              Originally posted by Kropff View Post
              Bei JavaScript hätte mit so was gerechnet. Aber PHP?
              Gerade bei JavaScript dürfte sowas aber nicht passieren.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Comment


              • #8
                Originally posted by wahsaga View Post
                Gerade bei JavaScript dürfte sowas aber nicht passieren.
                Stimmt. Aber bei der Sprache rechne ich mit allem.

                Peter
                Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                Meine Seite

                Comment


                • #9
                  Originally posted by Kropff View Post
                  Stimmt. Aber bei der Sprache rechne ich mit allem.
                  Ich rechne inzwischen bei PHP auch mit allem. Beispiel:

                  PHP Code:
                  $a 1;
                  $b 1;

                  var_dump($a + ++$a);
                  // int(4)

                  var_dump($b + ++$b);
                  // int(3) 
                  PHP Code:
                  $a 1;
                  $b = array(1);

                  var_dump($a + ($a 2));
                  // int(4)

                  var_dump($b[0] + ($b[0] = 2));
                  // int(3) 
                  PHP Code:
                  $array = array(123);

                  foreach (
                  $array as &$value) {}

                  foreach (
                  $array as $value) {}

                  echo 
                  implode(', '$array);
                  // 1, 2, 2 
                  PHP Code:
                  error_reporting(-1);

                  set_time_limit(10);

                  $i 0;
                  while (
                  true) {
                        
                  sleep(1);
                        echo ++
                  $i PHP_EOL;    
                        
                  flush();
                  }

                  // Ausgabe:
                  //
                  // 1 2 3 4 5 6 7 8 9 […] 21199 21200 21201
                  //
                  // Fatal error: Maximum execution time of 10 seconds exceeded in /var/www/test.php on line 9
                  // Call Stack
                  // #    Time          Memory    Function     Location
                  // 1    0.0043        612544    {main}( )    test.php:0
                  // 2    21216.6064    613392    sleep ( )    test.php:9 

                  Comment


                  • #10
                    hm zumindest das letztere kann man evtl noch verstehen :
                    Since sleep() can be interrupted by signals
                    {usercomments im phpmanual zu sleep}
                    [font=Verdana]
                    Wer LESEN kann, ist klar im Vorteil!
                    [/font]

                    Comment


                    • #11
                      Kennt jemand noch mehr davon?

                      Comment


                      • #12
                        ein bisschen so ähnlich .. hier im Thread

                        http://www.php.de/php-einsteiger/722...der-genau.html

                        das Verhalten von OR (bzw die Eigenheiten der Operator-Präferenz) ist auch erst auf den 2ten Blick erklärbar
                        Last edited by eagle275; 22-10-2010, 12:02.
                        [font=Verdana]
                        Wer LESEN kann, ist klar im Vorteil!
                        [/font]

                        Comment

                        Working...
                        X