Jump to content
php.lv forumi

Mainīgā vērtība kā masīva nosaukums


Martiny

Recommended Posts

Velos atrisinat uzdevumu.

$dalamais='4186xMusu Agritaxagrita';

$druka=explode("x", $dalamais);

echo $druka[1];

echo "<BR>";

echo $druka[0];

echo "<BR>";

for ($z=1; $z<11; $z++)

{

//Zinaams ka 10 elementi ir masiva agrita ar dazhaadaam skaitliskaam veertiibaam

if (/*te gribu paarbaudiit masiiva $agrita[$z] veertiibu, bet masiiva nosaukums ir mainiigaa $druka[2] veertiiba.

Droshi vien atvieglosies uzdevums ja izmantoshu veel kaadu mainiigo, kuram pieshkjirshu druka[2] veertiibu

$nosaukums=$druka[2]; to vajadzeeja izdariit pirms cikla.

Kaa man rakstiit to if rindinju?

Nesanaaca shis piemeers ->

if (&$nosaukums[$z]==0)

 

Buushu pateiciigs par risinaajumu.

Link to comment
Share on other sites

Baigi grūti iebraukt tavā jautājumā :) Cik nopratu, tad tev ir vēl kaut kāds masīvs $agrita ? ar 10 vērtībām?

 

Izskaidro bik vairāk, vai arī iedod bik vairāk tā koda.

Link to comment
Share on other sites

neiebraucu tajaa garajaa penterii, bet peec jautaajuma sapratu, ka tu gribi kauko taadu:

$mainiigais='veertiiba';

$$mainiigais[1]='kaukaada masiiva veertiiba';

echo $veertiiba[1]; //tip jaaizvada "kaukaada masiiva veertiiba"

Link to comment
Share on other sites

Te ir koda gabals, kuraa jau palaboju peec ieteikuma lietojot $$ simbolus, bet diemzheel nestraadaa.

Ko dariit?

<?php

.......

.......

$punkti[5]='4186xMusu Agritaxagrita';

 

for ($z=0; $z<=13; $z++)

{

$dalamais=$punkti[$z];

$druka=explode("x", $dalamais);

$mainigais=$druka[2];

echo "<TR><TD BGCOLOR=yellow><B>";

echo $druka[1];

echo "</B></TD><TD BGCOLOR=yellow><B>";

echo $druka[0];

echo "</B></TD>";

 

for ($f=1;$f<=$kartas; $f++)

{

if ($$mainigais[$f]==0):

$krasa="red";

else:

$krasa="green";

endif;

echo "<TD WIDTH=30 ALIGN=center BGCOLOR=";

echo $krasa;

echo ">";

echo $$mainigais[$f];

echo "</TD>";

}

echo "</TR>";

 

}

echo "</TABLE>";

?>

 

Paldies.

Link to comment
Share on other sites

A, kur tev tiek piešķirta šim $mainigais[$f] kāda vērtība? Un ko tu gribi vispār panākt, tb. kāda ir tā ideja? Ja varētu saprast, tad varētu mēģināt atrast kādu citu risinājumu!

Link to comment
Share on other sites

Varbūt iebraucu ;)

 

Tātad šeit pirmajā ciklā $mainigais=$druka[2]; šim nav jēgas, jo tad sanāk, ka visu laiku tu tam piešķir savādāku vērtību, vajadzētu $mainigais[$z]=$druka[2]; un tad tai otrā ciklā:

foreach($mainigais as $x){

if($x == 0){

$krasa='red';

}else{

$krasa='green';

}

echo "<TD WIDTH=30 ALIGN=center BGCOLOR=";

echo $krasa;

echo ">";

echo $x;

}

 

Nez vai sapratu, bet aptuveni šādi!

 

PS. Iesaku izmantot pareizi '' un "

Link to comment
Share on other sites

rindina $mainigais=$druka[2];

Te peec rindas sadaliishanas $druka[2] veertiiba ir agrita un liidz ar to $mainigais='agrita';

Veelaak es veelos paarbaudiit msiivu $agrita.

Piemeram shaadi if ($agrita[$f]==0) tratata.

Bet tajaa rindaa var buut massivi $agrita, $janis, $peteris utt.

Man Phelix ieteica izmantot $$mainigais taatad rakstiiju

if ($$mainigais[$f]==0) tratata.

Gruuti man paskaidrot, bet druks[2] veertiiba regulaari mainaas, taatad tur glabaajas masiiva nosaukums agrita janis vai peteris.

Link to comment
Share on other sites

Gacha, nevis foreach ($mainigais ar $x), bet foreach ($$mainigais as $x)

Šī murga vietā :

 

if($x == 0){

$krasa='red';

}else{

$krasa='green';

}

echo "<TD WIDTH=30 ALIGN=center BGCOLOR=";

echo $krasa;

echo ">";

 

labāk raksti:

$krasa = $x==0 ? 'reg' : 'green';

echo "<TD WIDTH=30 ALIGN=center BGCOLOR='$krasa'>";

Edited by bubu
Link to comment
Share on other sites

Eh uzrakstīšu pilnu kodu:

<?php
  ...
  $punkti[5]='4186xMusu Agritaxagrita';
  ...
  foreach ($punki as $dalamais)
  {
    $druka = explode('x', $dalamais);
    echo '<TR><TD BGCOLOR=yellow><B>', $druka[1], '</B></TD>';
    echo '<TD BGCOLOR=yellow><B>', $druka[0], '</B></TD>';
    $mainigais = $druka[2];
    foreach ($$mainigais as $x)
    {
      $krasa = $x==0 ? 'red' : 'green';
      echo "<TD WIDTH=30 ALIGN=center BGCOLOR='$krasa' />";
    }
    echo '</TR>';
  }
  echo '</TABLE>';
?>

Edited by bubu
Link to comment
Share on other sites

@martiny - Pats jau teici $mainīgais ir 'agrita' nevis '$agrita'. Un tas nav masīvs bet masīva elementa vērtība.

 

@bubu - Parādi, kur rodas tas $$mainigais ? bet par to color tev ir taisnība, vienkārši to tavu variantu es esmu maz lietojis, tapēc vēl pagaidām uz fiksu roku to nerakstu!

Link to comment
Share on other sites

Ja veelaties es Juus veel pamociishu.

Teiksim sacensiibas vairaakaas kaartaas, kuraas ieguust punktus no 0 liidz 1000 un ir 15 daliibnieki, kuri nemainaas. http://www.magnets.lv

Es veeleejos izveidot rezultaatu paarskatu par saviem pazinjaam. Pazinjas ir tie 15 daliibnieki. Izveidoju datubaazi ar laukiem id, karta, martins, agrita, janis, peteris. Lauka karta raksta sacensibas kartu, bet laukos martins, agrita, janis utt attieciigi katra daliibnieka rezultaatu mineetajaa kaartaa. Ja daliibnieks shajaa kaartaa nestarteeja, tad 0.

Kad rezultaatus atspoguljo, tad veelams tabulaa pirmajaa rindaa atteelot labaako daliibnieku, otrajaa kolonaa kopeejo punktu skaitu un tad katra naakoshaa kolonna ir kaarta1 kaarta2 kaarta3 utt ar rezultaatu, Ja rezultaats 0, tad izgaismo sarkanu.

Vai kaads izveidos skriptu vai tomeer mainiit datu baazes struktuuru.

Tas jums shim vakaram.

Martiny

Link to comment
Share on other sites

$mainigais un $$mainigais nav viens un tas pats. Tie ir 2 dažādi mainīgie. Tad jau $$$$mainigais ar ir $mainigais!

 

EDIT:

<?php

$name = "Juris";

$$name = 'Zhanis';

 

echo $name.'<br />';

echo $$name;

?>

 

iznakums:

 

Juris

Žanis

Edited by Gacha
Link to comment
Share on other sites

Es tak to zinu, ka ja $b='c', tad $$b='1 ir ekvivalents ar $c='1'. Bet vai tad to arī nevajadzēja, ka tā agrita ir mainīgais? un $mainigais saturēs agrita, un $$mainīgais tad vērsīsies pie agrita masīva, ne?

Link to comment
Share on other sites

×
×
  • Create New...