Permalänk
Medlem

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

Visa signatur

Ryzen 7 2700 @ 4.0Ghz, X470 Taichi, 16gb ram @ 3200 mhz, GTS V8 Cpu Cooler, Gigabyte 5700XT.

Permalänk
Medlem
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?

Visa signatur

Arch - Makepkg, not war -||- Gigabyte X570 Aorus Master -||- GSkill 64GiB DDR4 14-14-15-35-1T 3600Mhz -||- AMD 5900x-||- Gigabyte RX6900XT -||- 2x Adata XPG sx8200 Pro 1TB -||- EVGA G2 750W -||- Corsair 570x -||- O2+ODAC-||- Sennheiser HD-650 -|| Boycott EA,2K,Activision,Ubisoft,WB,EGS
Arch Linux, one hell of a distribution.

Permalänk
Medlem

@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.

Visa signatur

Ryzen 7 2700 @ 4.0Ghz, X470 Taichi, 16gb ram @ 3200 mhz, GTS V8 Cpu Cooler, Gigabyte 5700XT.

Permalänk
Medlem
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

Visa signatur

Arch - Makepkg, not war -||- Gigabyte X570 Aorus Master -||- GSkill 64GiB DDR4 14-14-15-35-1T 3600Mhz -||- AMD 5900x-||- Gigabyte RX6900XT -||- 2x Adata XPG sx8200 Pro 1TB -||- EVGA G2 750W -||- Corsair 570x -||- O2+ODAC-||- Sennheiser HD-650 -|| Boycott EA,2K,Activision,Ubisoft,WB,EGS
Arch Linux, one hell of a distribution.

Permalänk
Tangentbordskonnässör

<?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

Permalänk
Medlem

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

Visa signatur

Ryzen 7 2700 @ 4.0Ghz, X470 Taichi, 16gb ram @ 3200 mhz, GTS V8 Cpu Cooler, Gigabyte 5700XT.

Permalänk
Medlem

@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.

Visa signatur

Ryzen 7 2700 @ 4.0Ghz, X470 Taichi, 16gb ram @ 3200 mhz, GTS V8 Cpu Cooler, Gigabyte 5700XT.

Permalänk
Medlem
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

Visa signatur

Ryzen 5600X | MSI Tomahawk | GTX 3070

Permalänk
Medlem

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

Visa signatur

Ryzen 7 2700 @ 4.0Ghz, X470 Taichi, 16gb ram @ 3200 mhz, GTS V8 Cpu Cooler, Gigabyte 5700XT.