Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP5 und Variablen initialisieren

Einklappen

Neue Werbung 2019

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

  • PHP5 und Variablen initialisieren

    Hallo Zusammen,

    es geht um PHP 5 bzw. PHP 6 und Variablen initialisieren.

    Nach längerem Suchen bisher nichts gefunden.


    Variablen sollten für eine saubere und sichere Programmierung initialisiert werden.
    Nun habe ich ein Skript bei dem die Variablen meist nicht initialsiert worden sind.

    Muss ich mir nun die Arbeit machen und alle Variablen initialisieren?
    Oder muss ich Variablen nur initialsieren wenn register_globas auf on stehen?

    register_globals soll ab PHP Version 6 eh entfernt werden.
    Heist das nun Variablen brauchen daher nicht mehr initialisiert werden?

    Oder bleibt es für eine richtige, saubere Programmierung weiterhin
    ,,Pflicht,,?

    Hoffe sehr auf Antworten, da ich mir evt. sehr viel Arbeit erstparen kann.

    Grüße
    Kodi

  • #2
    Moin.

    Ich würde eher behaupten, dass du bissle such-faul bist, obschon die suche mit google gleich tonnenweise Tutorials und sonstige Beiträge ausspuckt, (mit welchen suchbegriffen hast du gesucht?) machst du dir die mühe und registrierst dich hier (nichts gegen das Forum - nur eine Tatsache).

    Suche wäre schneller gewesen... hier mal die wichtigste Seite "PHP-Bibel" php.net dort findest du alles, was du wissen musst.

    Guck mal hier 1. Lektion eines jeden Tutorials:

    PHP-Code:
    <?php 

        $string 
    'abc'// string (de: Zeichenkette)
        
    $integer 5// integer (de: numerischer Wert)
        
    $array = array(=> 'eins','zwei',3,array('array in array'));
        
        echo 
    $string// gibt variable string aus
        
    echo $integer// usw...
        
    echo $array[0]; // gibt den ersten wert des arrays aus hier: 'eins'
        
    echo $array[4][0]; // gibt 'array in array' aus

        /* statt echo kannst du auch print nehmen.
            schau dir auch mal die funktionen print_r und var_dump genau an!
        */    

    ?>
    Gruss

    EDIT: oder hab ich dich falsch verstanden?
    EDIT2: sry, hatte gedacht du wüsstest net mal wie man variabeln nutzt... :P
    Genau das wollte ich auch gerade sagen ^^

    Kommentar


    • #3
      In PHP sind Variablen automatisch initialisiert, sobald ihnen das erste Mal ein Wert zugewiesen wird oder sobald sie das erste Mal als Referenz an eine Funktion übergeben werden. Sie sind nur dann nicht initialisiert, wenn ihr Wert abgefragt wird, bevor ihr einer zugewiesen wurde. Das wird aber auch per der error_reporting-Einstellung E_ALL mit einer Notice quittiert. Notices sollten in einem sauberen Skript nicht vorkommen, auch wenn register_globals als ist.

      Beitrag editiert:
      […] @habbohighs Was willst du uns damit jetzt sagen?
      Refining Linux: “[url=http://www.refining-linux.org/archives/65/Performing-push-backups-Part-1-rdiff-backup/]Performing Push Backups – Part 1: rdiff-backup[/url]”

      Kommentar


      • #4
        Let me google that for you

        Kommentar


        • #5
          Lool - affe loco

          Wie ,,gesagt,, variablen müssen nicht aber sollten initialisiert werden.

          Ich habe ein Skript in dem die Variablen nicht initialisiert worden sind.
          (Übrigens scheint das sogar bei sehr bekannten und ,,professionellen,, Skripten der Fall zu sein.)

          Nun möchte ich so gerne wissen ob ich mir die Arbeit machen muss, das
          Skript zu überarbeiten und alle Variablen zu initialisieren um es sauber und
          sicherer zu machen. ODER
          Ist das unnötig wenn register_globals eh auf off steht und
          register Globals in PHP Version 6 sogar ganz aus der Configmöglichkeit entfernt wird.

          Ich finde nur nichts..oder bin mir nicht sicher ob Variablen weiterhin auf jeden Fall initialisiert werden müssen oder sollten auch wenn register_globals off sind.

          Man liest so vieles aber was ist da letztendlich wirklich dran??

          Hoffe sehr auf weitere Infos.

          Kommentar


          • #6
            Wenn du Interesse daran hast, sauber und fehlerfrei zu programmieren, dann definitiv JA. Dass sogenannte professionelle Skripte oftmals viele Schlampereien enthalten, ist jedenfalls keine Entschuldigung.
            [IMG]https://g.twimg.com/twitter-bird-16x16.png[/IMG][URL="https://twitter.com/fschmengler"]@fschmengler[/URL] - [IMG]https://i.stack.imgur.com/qh235.png[/IMG][URL="https://stackoverflow.com/users/664108/fschmengler"]@fschmengler[/URL] - [IMG]http://i.imgur.com/ZEqflLv.png[/IMG] [URL="https://github.com/schmengler/"]@schmengler[/URL]
            [URL="http://www.schmengler-se.de/"]PHP Blog[/URL] - [URL="http://www.schmengler-se.de/magento-entwicklung/"]Magento Entwicklung[/URL] - [URL="http://www.css3d.net/"]CSS Ribbon Generator[/URL]

            Kommentar


            • #7
              Das hört sich nach einer Anwort an.

              Wegen den vermeindlichen ,,professionellen,, Skripten.
              Das soll keine Entschuldigung sein. Es wundert mich nur und macht mich deshalb auch etwas nachdenklicher gegenüber dem logischen Verständnis das ich auch zum anderen Teil hatte.

              Also initialsieren ein ,,MUSS,,

              or($i=0,$s='6e6172667a6f7274';$i<0x10;$c=$s{$i++}. $s{$i++},print(chr(hexdec($c)))){'Hallo';}

              Was ist das..wandelst du ne Zahl in Machinencode um?

              Kommentar


              • #8
                Ich habe dir in Post #3 eigentlich schon alles geschrieben, was du wissen musst. Aber auf mich hört ja keiner.
                Refining Linux: “[url=http://www.refining-linux.org/archives/65/Performing-push-backups-Part-1-rdiff-backup/]Performing Push Backups – Part 1: rdiff-backup[/url]”

                Kommentar


                • #9
                  Zitat von kojak2008 Beitrag anzeigen
                  Was ist das..wandelst du ne Zahl in Machinencode um?
                  Probiers aus
                  [IMG]https://g.twimg.com/twitter-bird-16x16.png[/IMG][URL="https://twitter.com/fschmengler"]@fschmengler[/URL] - [IMG]https://i.stack.imgur.com/qh235.png[/IMG][URL="https://stackoverflow.com/users/664108/fschmengler"]@fschmengler[/URL] - [IMG]http://i.imgur.com/ZEqflLv.png[/IMG] [URL="https://github.com/schmengler/"]@schmengler[/URL]
                  [URL="http://www.schmengler-se.de/"]PHP Blog[/URL] - [URL="http://www.schmengler-se.de/magento-entwicklung/"]Magento Entwicklung[/URL] - [URL="http://www.css3d.net/"]CSS Ribbon Generator[/URL]

                  Kommentar


                  • #10
                    Stimmt Manko10.... Das war zu gut geschrieben so das es etwas unterging..
                    So ist das halt oft ) Danke auf jeden Fall.

                    ...zp

                    Kommentar

                    Lädt...
                    X