Hjälp till en PHP nybörjare.

Trädvy Permalänk
Medlem
Registrerad
Okt 2015

Hjälp till en PHP nybörjare.

Jag försöker lära mig php och vill förstå hur man skriver ner "execution result" dvs html kod av följande PHP kod.

<?php
$ab = 0;
$xy = 1;
$count = 0;
echo "<table>";
while ($count < 3) {
echo "<tr>";
$count++;
echo "<td>" . $ab . "</td><td>" . $xy . "</td>";
$ab += $xy;
$xy += $ab;
echo "</tr>";
}
echo "</table>";
?>

Tack på förhand

Trädvy Permalänk
Medlem
Plats
#Archlinux
Registrerad
Jun 2007
Skrivet av Zargoz:

Jag försöker lära mig php och vill förstå hur man skriver ner "execution result" dvs html kod av följande PHP kod.

<?php
$ab = 0;
$xy = 1;
$count = 0;
echo "<table>";
while ($count < 3) {
echo "<tr>";
$count++;
echo "<td>" . $ab . "</td><td>" . $xy . "</td>";
$ab += $xy;
$xy += $ab;
echo "</tr>";
}
echo "</table>";
?>

Tack på förhand

Första använd kod taggar. Vad menar du med skriver ned?

Arch - Makepkg, not war -||- Asus Crosshair Hero VI -||- GSkill 16GiB DDR4 15-15-15-35-1T 3600Mhz -||- AMD 1600x @ 4.1GHz -||- nVidia MSI 970 Gaming -||- Samsung 850 Pro -||- EVEGA G2 750W -||- Corsair 570x -||- Asus Xonar Essence STX -||- Sennheiser HD-650 -||
Arch Linux, one hell of a distribution.

Trädvy Permalänk
Medlem
Registrerad
Okt 2015

@Commander:

Hej, ursäkta om jag är otydlig men såhär står det: Considering the php code, write down the execution result, i.e. the HTML code, of the following PHP code.

Trädvy Permalänk
Medlem
Plats
#Archlinux
Registrerad
Jun 2007
Skrivet av Zargoz:

@Commander:

Hej, ursäkta om jag är otydlig men såhär står det: Considering the php code, write down the execution result, i.e. the HTML code, of the following PHP code.

Well läs på vad funktionerna gör.
http://php.net/manual/en/control-structures.while.php

Kort;
While är en iterator som följer en condition.
$ab, $xy, $count är variabler.
$variabel++ inkrementerar alltså adderar med 1, är en förkorting på += 1 (0++ blir 1, 1++ blir 2 osv)
+= summerar
= anger värde

Om vi säger att $variabel1 = 1 och $variabel2 = 2
$variabel1 += $variabel2
Medför att $variabel1 blir 3

$variabel1 = $variabel2
Medför att $variabel1 blir 2

Arch - Makepkg, not war -||- Asus Crosshair Hero VI -||- GSkill 16GiB DDR4 15-15-15-35-1T 3600Mhz -||- AMD 1600x @ 4.1GHz -||- nVidia MSI 970 Gaming -||- Samsung 850 Pro -||- EVEGA G2 750W -||- Corsair 570x -||- Asus Xonar Essence STX -||- Sennheiser HD-650 -||
Arch Linux, one hell of a distribution.

Trädvy Permalänk
Tangentbordskonnässör
Testpilot
Plats
Örebro
Registrerad
Sep 2005

<?php $ab = 0; $xy = 1; $count = 0; echo "<table>"; while ($count < 3) { // Medan $count är mindre än 3 skriv ut koden nedan. echo "<tr>"; $count++; // +1 på $count echo "<td>" . $ab . "</td><td>" . $xy . "</td>"; // Skriver ut $ab och $xy variablerna (0 och 1 första vändan) $ab += $xy; // ab = ab + xy $xy += $ab; // xy = xy + ab echo "</tr>"; } echo "</table>"; ?>

Hoppas det underlättar

Trädvy Permalänk
Medlem
Registrerad
Okt 2015

Tack så mycket grabbar. ska se om jag förstår det hela

Trädvy Permalänk
Medlem
Registrerad
Okt 2015

@Commander:
Hej. Jag fattade till slut vad det menas. Man skulle bara få resultat av php koden som man skulle se i html. Så här:

01
12
35

Nu ska jag bara komma fram till varför man får de nummer.

Trädvy Permalänk
Medlem
Plats
Linköping
Registrerad
Jan 2010
Skrivet av Zargoz:

@Commander:
Hej. Jag fattade till slut vad det menas. Man skulle bara få resultat av php koden som man skulle se i html. Så här:

01
12
35

Nu ska jag bara komma fram till varför man får de nummer.

echo "<td>" . $ab . "</td><td>" . $xy . "</td>"; $ab += $xy; // ab = ab + xy $xy += $ab; // xy = xy + ab echo "</tr>";

ab = 0
xy = 1
Iteration 1:
Skriver ut ab + xy (Skriver ut 0 och 1
ab += xy; (ab = ab + xy) (ab = 0+1) $ab är nu 1
xy += ab; (xy = xy + ab) (xy = 1+1) $xy är nu 2

Iteration 2:
ab = 1
xy = 2
Skriver ut ab + xy (Skriver ut 1 och 2)
ab += xy; (ab = ab + xy) (ab = 1+2) $ab är nu 3
xy += ab; (xy = xy + ab) (xy = 2+3) $xy är nu 5

Iteration 3:
ab = 3
xy = 5
Skriver ut ab + xy (Skriver ut 3 och 5)
ab += xy; (ab = ab + xy) (ab = 3+5) $ab är nu 8
xy += ab; (xy = xy + ab) (xy = 5+8) $xy är nu 13

Hade while-loopen nu varit $count < 4 istället hade den skrivit ut
0 1
1 2
3 5
8 13

Jag tror dock i "uppgiften" de även vill ha HTMLen!
Alltså även <table> och <tr>-taggarna

Bärbar: Macbook Pro 13" Retina Mid-2014

Trädvy Permalänk
Medlem
Registrerad
Okt 2015

@Sonywalk: dude tack så mycket för hjälpen!! De vill ha bara nummer, inget annat!