| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |
|

17-05-2006, 06:55
|
|
nichtsooft
Registrierter Benutzer
|
|
Registriert seit: Apr 2006
Ort: Wien [AUT]
Beiträge: 383
|
|
Wert aus einem Array auslesen...
Moin, moin!
Kurze Frage:
Ist es möglich aus einem array "$array1" einen Wert auszulesen, von dem ich lediglich weiss, dass er genau vor dem Wert "9095" steht?
BSP.:
Array1(id udpport name status 3 9095 "DuDe Testserver" 0 4 9096 "lololololol" 1 OK)
Die gesuchte Zahl wäre also "3".
P.s.: Wie gesagt, ich kenne lediglich die Folgezahl und nicht die Position im array!
Danke für eure Hilfe!
|

17-05-2006, 07:20
|
|
nichtsooft
Registrierter Benutzer
|
|
Registriert seit: Apr 2006
Ort: Wien [AUT]
Beiträge: 383
|
|
Lösungsansatz 1:
PHP-Code:
$vergl = '9095';
for($i=0; $i<=$array1; $i++) {
if ($array1[$i] eq $vergl) {
print $i+1,". Position\n";
last;
}
}
Klingt plausibel, funzt aber leider nicht!
Parse error: parse error, unexpected T_STRING in....
Lg. Berny
|

17-05-2006, 07:30
|
|
nichtsooft
Registrierter Benutzer
|
|
Registriert seit: Apr 2006
Ort: Wien [AUT]
Beiträge: 383
|
|
Lösungsansatz 2:
PHP-Code:
$key = array_search('9095', $array1);
$wert = $key-1;
echo $wert;
Klappt leider auch nicht!
Warning: array_search(): Wrong datatype for second argument in...
|

17-05-2006, 08:52
|
 |
onemorenerd
 Moderator
|
|
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.481
|
|
PHP-Code:
echo $array[array_search(9095, $array)-1];
Das muß so funktionieren, wenn $array ein Array ist.
|

17-05-2006, 09:00
|
|
nichtsooft
Registrierter Benutzer
|
|
Registriert seit: Apr 2006
Ort: Wien [AUT]
Beiträge: 383
|
|
onemorenerd ich hab da nan großen Fehler gemacht!!!!
Diese Funktion
PHP-Code:
function showservers(){
fputs($this->link,"dbserverlist\n");
$buffer = fread($this->link,10000);
return $buffer;
Liefert einen String zurück, der so ausshiert:
PHP-Code:
id udpport name status
3 9095 "DuDe Testserver" 0
4 9096 "lololololol" 1
Und ich muss noch immer irgendwie den Wert 3 rausfiltern!
Ne Idee?
|

17-05-2006, 09:05
|
 |
onemorenerd
 Moderator
|
|
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.481
|
|
PHP-Code:
$array = explode("\n", showservers());
foreach ($array as $num => $line) {
$array[$num] = explode("\t", $line);
if ($key = array_search(9095, $array[$num])) {
echo $array[$num][$key-1];
}
}
Geändert von onemorenerd (17-05-2006 um 09:17 Uhr)
|

17-05-2006, 09:10
|
|
nichtsooft
Registrierter Benutzer
|
|
Registriert seit: Apr 2006
Ort: Wien [AUT]
Beiträge: 383
|
|
Geile Sache!
Bloss ein klitze kleienes Problemchen noch: Ich brauche nur die Zahl!
EDIT:
Nach dem du deinen Post verändert hast und ich das übernommen hab, bekomm ich die Zahl 9095 ausgegeben!
Geändert von nichtsooft (17-05-2006 um 09:13 Uhr)
|

17-05-2006, 09:18
|
 |
onemorenerd
 Moderator
|
|
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.481
|
|
Sorry, da hab ich die -1 vergessen. Habe es nochmal verändert.
|

17-05-2006, 09:23
|
|
nichtsooft
Registrierter Benutzer
|
|
Registriert seit: Apr 2006
Ort: Wien [AUT]
Beiträge: 383
|
|
10000000 Dank! Ich beneide dich um deine Kenntnisse!
|

17-05-2006, 11:55
|
|
nichtsooft
Registrierter Benutzer
|
|
Registriert seit: Apr 2006
Ort: Wien [AUT]
Beiträge: 383
|
|
@onemorenerd:
Sag mal;
Funktioniert das mit dieser Funktion auch!?
PHP-Code:
function serverinfo(){
fputs($this->link,"si \n");
$buffer = fread($this->link,10000);
$buffer = str_replace("\n","<br />",$buffer);
$buffer = str_replace("OK"," ",$buffer);
return $buffer;
}
Diese gibt folgendes aus:
http://web4.kilo062.server4you.de/TS...hpresource.php
und ich bräuchte das irgendwie so, dass ich die Daten in ein formular aufnehmen kann.
Bsp.:
PHP-Code:
<input type="text" name="$zeile1_wert1" value="$zeile1_wert2">
ich hoffe du verstehst was ich meine
|

17-05-2006, 17:43
|
 |
onemorenerd
 Moderator
|
|
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.481
|
|
Na klar, funktioniert vom Prinzip her genauso. Man muß den String nur etwas anders zerlegen.
Wodurch werden die Zeilen getrennt? Danach zuerst exploden. Ergebnis ist ein Array aller Zeilen.
Jedes Element des Arrays nach dem/n Zeichen zwischen Name und Wert exloden.
|

17-05-2006, 18:01
|
|
nichtsooft
Registrierter Benutzer
|
|
Registriert seit: Apr 2006
Ort: Wien [AUT]
Beiträge: 383
|
|
nunja getrennt wird durch zeilenumbruch.
ca. so:
server_id=4
server_name=Testerver
server_platform=Linux
und dann müsste ich noch zusätzlich die werte beim Gleichheitszeichen trennen, damit ich auf so ein ergebnis komme:
$a[0] $b[0]
$a[1] $b[1]
$a[2] $b[2]
|

18-05-2006, 10:54
|
|
nichtsooft
Registrierter Benutzer
|
|
Registriert seit: Apr 2006
Ort: Wien [AUT]
Beiträge: 383
|
|
@onemorenerd
Öhm; ich bekomm das voll nicht gebacken! Wärst du so nett und würdest du mir nochmal helfen!?
|

18-05-2006, 11:11
|
 |
onemorenerd
 Moderator
|
|
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.481
|
|
Der Link gibt leider nur noch Fehlermeldungen aus. Ich versuchs mal ohne:
PHP-Code:
$in = explode('<br>', serverinfo());
$out = array();
foreach ($in as $num => $line) {
$pair = explode('=', $line);
$out[trim($pair[0])] = trim($pair[1]);
}
|

18-05-2006, 11:39
|
|
nichtsooft
Registrierter Benutzer
|
|
Registriert seit: Apr 2006
Ort: Wien [AUT]
Beiträge: 383
|
|
Moin onemorenerd!
Danke für deine schnelle Reaktion!
also der LINK funzt jetzt wieder ohne Fehler!
Nochmal Link
zur Übersicht habe ich ich einen 'HR' hinzugefügt und darunter den Befehl
PHP-Code:
echo $pair[0].' <b>ist folglich</b> '.$pair[1];
gesetzt.
Irgendwie liefert das skript aber noch zusätzliche Werte...
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|