Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] funkcja array
Forum PHP.pl > Forum > PHP
joshua
mam pytanie, czy da się umieścić w funkcji array zmienne z pliku. Chodzi mi o coś takiego:
w pliku txt:
linia 1||linia 1.2||linia 1.3||
linia 2||linia 2.2||linia 2.3||

chciałbym aby zmienna wygladala tak:

[php:1:696f7dbbd4]
$arr = array ('linia 1' => 'linia 1.3', 'linia 2' => 'linia 2.3');
[/php:1:696f7dbbd4]
próbowałem na różna sposoby i nic, np(tylko część kodu):

[php:1:696f7dbbd4]
for ($i=0; $i < $count_of_file; $i++){
$arr = array ('$file[0]' => '$file[2]')
}
[/php:1:696f7dbbd4]

ale niestety zmiennej $arr przypisana jest tylko ostatnia wartość.
Jak to załatwić?
adwol
[php:1:34355f867e]<?php
for ($i = 0; $i < $count_of_file; $i++)
$arr[$file[0]] = $file[2];
?>[/php:1:34355f867e]
marcin96
A to nie jest czasem to samo, co już było, tylko inaczej zapisane?

Jak dla mnie, to powinno być:
[php:1:f21d6afb5e]
<?php

for ($i=0; $i < $count_of_file; $i++){
$linia = explode('||',$file[$i]);
$arr[$linia[0]] = $linia[2];
}

?>
[/php:1:f21d6afb5e]
joshua
Nadal nie pomaga, teraz loguje tylko pierwszego użytkownika. Podaje kod:
[php:1:20fc14aa99]<?php
$loggy = file("logins.txt");
$loggy_c = count($loggy);

for($i=0; $i<$loggy_c; $i++){
$linia = explode("||", $loggy[$i]);
$pass[$linia[0]] = $linia[2];
}

if ($login && $passwd) {
if ($pass[$login] == $passwd) {
echo "Ok. Zalogowany.";
}
else {
echo "Bad. Nie zalogowany.";
}
}
else {
echo "Formularz.";
}
?>[/php:1:20fc14aa99]

Co jest nie tak!?
marcin96
[php:1:c2b83429a0]
<?php

for($i=0; $i<$loggy_c; $i++){
$linia = explode("||", $loggy[$i]);
$pass[$linia[0]] = trim($linia[2]);
}

?>
[/php:1:c2b83429a0]

...czyli jeszcze trzeba było się pozbyć znaków nowej linii snitch.gif)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.