WinFuture-Forum.de: Php- Array - Problem Variable - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Php- Array - Problem Variable


#1 Mitglied ist offline   ps915 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.117
  • Beigetreten: 17. Mai 07
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 26. März 2008 - 17:02

Was mach ich denn nur falsch bei dieser Array:

// Zufallszahlen Generator
  srand(microtime()*1000000);
  $zufall = array((rand(1,1000000000000000000000000000000000),
				  (rand(1,1000000000000000000000000000000000),
				  (rand(1,1000000000000000000000000000000000),
				  (rand(1,1000000000000000000000000000000000),
				  (rand(1,1000000000000000000000000000000000),);


Ich möchte die ersten 3 Zufallszahlen mit echo ausgeben und nochmal alle in einer Datei speichern.

Nr. 1 = $zufall[0]<br>
Nr. 2 = $zufall[1]<br>
Nr. 3 = $zufall[2]<br>



Achja kann man nicht per Exponent² die vielen Nullen sparen. Weiß einer wie? Außerdem weiß ich nicht ob das mit dem srand so gut ist für die array! Es soll so in der art aussehen!

Danke!
0

Anzeige



#2 Mitglied ist offline   [Elite-|-Killer] 

  • Gruppe: aktive Mitglieder
  • Beiträge: 761
  • Beigetreten: 02. Oktober 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Passau

geschrieben 26. März 2008 - 17:37

<?php
// srand brauchst seit php 4.2 nicht mehr, weils sowieso automatisch gemacht wird
$Random = array (
rand(1, (1*pow(10, 15))),
rand(1, (1*pow(10, 15))),
rand(1, (1*pow(10, 15))),
rand(1, (1*pow(10, 15))),
rand(1, (1*pow(10, 15)))
);
// Die ersten 3 Werte ausgeben:
print("Nr #1:".$Random[0]."\n");
print("Nr #2:".$Random[1]."\n");
print("Nr #3:".$Random[2]."\n");
// In einer Datei speichern, ab PHP 5:
file_put_contents("dateiname.txt", $Random[0]."\n".$Random[1]."\n".$Random[2]);
// Oder irgendwie so
?>

Dieser Beitrag wurde von [Elite-|-Killer] bearbeitet: 26. März 2008 - 17:39

0

#3 Mitglied ist offline   ps915 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.117
  • Beigetreten: 17. Mai 07
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 26. März 2008 - 17:54

Hm nicht ganz das was ich wollte... ich brauche nur eine Zufallszahl mit 31 stellen.
quasi das hier nur ohne buchstaben:

1be19427d5c4d3e30de131004bf3f352

Wie ist mir egal aber mit rand komme ich nur nicht weit, oder kann ich den errechneten Wert nacher noch so mit einer Zahl multiplizieren, dass ein 31 stelliger Wert herauskommt?
0

#4 Mitglied ist offline   [Elite-|-Killer] 

  • Gruppe: aktive Mitglieder
  • Beiträge: 761
  • Beigetreten: 02. Oktober 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Passau

geschrieben 26. März 2008 - 17:59

Ka wie php intern verarbeitet, aber ich denke 31 Stellen könnten etwas zu viel sein.
du kannst folgendes versuchen:
rand(1, (1*pow(10, 31)));
oder auch einfach mehrere Random werte hintereinande hängen.
also $Radmom[0].$Radmom[1].$Radmom[2].$Radmom[3]

Dieser Beitrag wurde von [Elite-|-Killer] bearbeitet: 26. März 2008 - 17:59

0

#5 Mitglied ist offline   ps915 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.117
  • Beigetreten: 17. Mai 07
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 26. März 2008 - 18:07

Stimmt, dass ist eine Gute idee! dankeschön das dürfte funzen...
0

#6 Mitglied ist offline   ps915 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.117
  • Beigetreten: 17. Mai 07
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 26. März 2008 - 18:39

So hab ich es nun gemacht:
// Zufallszahlen
  $r = array(rand(10000,32768),
				  rand(10000,32768),
				  rand(10000,32768),
				  rand(10000,32768),
				  rand(10000,32768),
				  rand(10000,32768),
				  rand(10000,32768),
				  rand(10000,32768),
				  rand(10000,32768),
				  rand(10000,32768) );
// Zahlen mit einer Kommastelle; 5 Möglichkeiten
  $r5 = array(rand(1,9),
				  rand(1,9),
				  rand(1,9),
				  rand(1,9),
				  rand(1,9),
				  rand(1,9),
				  rand(1,9),
				  rand(1,9),
				  rand(1,9),
				  rand(1,9));

//	   zahl1 = $r[1]$r[2]$r[3]$r[4]$r[5]$r[6]$r5[1]
//	   zahl2 = $r[0]$r[1]$r[2]$r[3]$r[4]$r[5]$r5[2]
//	   zahl3 = $r[9]$r[0]$r[1]$r[2]$r[3]$r[4]$r5[3]
//	   zahl4 = $r[8]$r[9]$r[0]$r[1]$r[2]$r[3]$r5[4]
//	   zahl5 = $r[7]$r[8]$r[9]$r[0]$r[1]$r[2]$r5[5]
//	   zahl6 = $r[6]$r[7]$r[8]$r[9]$r[0]$r[1]$r5[6]
//	   zahl7 = $r[5]$r[6]$r[7]$r[8]$r[9]$r[0]$r5[7]
//	   zahl8 = $r[4]$r[5]$r[6]$r[7]$r[8]$r[9]$r5[8]
//	   zahl9 = $r[3]$r[4]$r[5]$r[6]$r[7]$r[8]$r5[9]
//	   zahl10 = $r[2]$r[3]$r[4]$r[5]$r[6]$r[7]$r5[0]
echo(
Nr. 1 = $r[1]$r[2]$r[3]$r[4]$r[5]$r[6]$r5[1]<br>
Nr. 2 = $r[0]$r[1]$r[2]$r[3]$r[4]$r[5]$r5[2]<br>
Nr. 3 = $r[9]$r[0]$r[1]$r[2]$r[3]$r[4]$r5[3]<br>);
//usw

0

#7 Mitglied ist offline   [Elite-|-Killer] 

  • Gruppe: aktive Mitglieder
  • Beiträge: 761
  • Beigetreten: 02. Oktober 05
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Passau

geschrieben 26. März 2008 - 19:22

Ginge auch kürzer:
<?php
for($x = 1; $x <= 3; $x++)
{
	$r = "";
	for($i = 1; $i <= 10; $i++)
	{
		$r .= rand(100, 999);   
	}
	print("Nr. ".$x.": ".$r.rand(0, 9)."<br />");
}
?>

In dem Fall beginnt die Zahl allerdings nie mit 0^^

Dieser Beitrag wurde von [Elite-|-Killer] bearbeitet: 26. März 2008 - 19:31

0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0