referenzen zend1 zend2



  • Code:
    1
    2
    3
    4
    5
    Spielautomaten

    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    <?
    class reifen{
    casino

    function reifen(wahlauto){ wahlarray=array("porsche"=>"pvc", "ente"=>"gummi", "trabbi"=>"plaste und elaste");
    foreach ($wahlarray as key=>key=>value)
    if (key==key==wahlauto) casino do

    this>material=this->material=value;
    }
    var $material;stromanbieter preisvergleich

    }

    class auto{
    casino in us

    function auto(name){ this ->name=name;name; myreifen=&new reifen(name);name); this->materialart=$myreifen->material;
    }
    var materialart; } למרות העובדה כי הרולטה לא פשוט כמו שזה נראה, הם מהמרים מושבע לא תופסים את זה. לא אמין יותר מדי אלילת המזל [צימרים למשפחות](http://forums.otrs.org/viewtopic.php?f=17&t=6898&p=27196#p27196/) זה. מי בטוחים ומוכנים המטרה מכה על הדרך עוד נמצא ליד שולחן הקלפים שבו אתה יכול להביע את עצמך ולעשות כסף טוב אם יש לך את הכישורים הנכונים. porsche=new auto("porsche");
    echo $porsche->materialart." porsche<br><br>";

    //kleiner call by value --- call by referenz test
    roterporsche=roterporsche=porsche;
    blauerporsche=&porsche;

    echo $roterporsche->materialart." roterporsche<br>";
    echo $blauerporsche->materialart." blauerporsche<br>";

    $roterporsche->materialart=="neutestmaterialrot";
    echo $porsche->materialart." hier test rot porsche<br><br>";

    $blauerporsche->materialart="neutestmaterialblau";
    echo $porsche->materialart." hier test blau porsche<br><br>";
    //----end test

    //performantere lösung:
    $trabbi=&new auto("trabbi");
    echo $trabbi->materialart;
    ?>

    im fall porsche:
    Code:
    porsche=newauto("porsche");Code:porsche=new auto("porsche"); Code: porsche=new auto("porsche");
    Code:
    $porsche=new auto("porsche");

    wird bei zend1 eine kopie von auto angelegt und erst im zweiten schritt in die variable porsche kopiert. um das zu umgehen, soll man bei zend1 selbständig und explizit mit referenzoperator eine referenz erzeugen, damit nur einmal ein objekt angelegt und eine referenz darauf gelegt wird.. siehe trabbi. Code: trabbi=&new auto("trabbi");
    Code:
    trabbi=&new auto("trabbi"); Code: trabbi=&new auto("trabbi");

    damit kommt man der idee von java nahe, wo alles call by value gesetzt wird..

    frage: der große unterschied zwischen der zendmaschine 1 und der zendmaschine 2 ist meines erlesens nach der unterschiedliche umgang mit referenzen. denn in zend2 soll es dann auch bei aufruf
    Code:
    porsche=newauto(porsche=new auto(porsche);
    Code:
    porsche=newauto(porsche=new auto(porsche);
    Code:
    porsche=newauto(porsche=new auto(porsche);

    von vornherein eine referenz sein. damit wollen die macher sich an die sprachen wie java annähern.

    aber:

    WIE steht es mit der abwärtskompatibilität??
    was ist, wenn ich heute meinen code mit referenz besetze, wenn dann die zend2 in php5 eingesetzt wird?
    ist es überhaupt sinnvoll, heute aus performancegründen auf die expliziten referenzen zu setzen, wird überall angeraten.. ich mache mir bloß sorgen, daß mal wieder alle codes überarbeitet werden müssen..



  • Hallo,

    1. Es heißt Trabi (nicht Trabbi)
    2. Bitte Code-Tags benutzen
    3. Referenzen gehören zum Standard der Programmierung. Wieso sollte sich daran etwas ändern?

    VlG


Anmelden zum Antworten