Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> zwrócenie tablica dwuwymiarowej z funkcji
uczeń php
post
Post #1





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 8.01.2010

Ostrzeżenie: (0%)
-----


Witam
Jak zwrócić tablice dwuwymiarową z funkcji ?
Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




dziwne pytanie... tak samo jak jednowymiarową czy trzy wymiarową. Moze opisz problem dokladniej smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
uczeń php
post
Post #3





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 8.01.2010

Ostrzeżenie: (0%)
-----


Mam napisany skrypt w php w sposób strukturalny. Programik ten odczytuje dane z pliku tekstowego w postaci
aaaaa bbbbbb ccccc dddd eeeee
aaaaa bbbbbb ccccc dddd eeeee
aaaaa bbbbbb ccccc dddd eeeee
aaaaa bbbbbb ccccc dddd eeeee
Wyrażnie widać że to tablica dwuwymiarowa w literaturze tablica tablic. Chciałbym ten programik - który w strukturalnie działa mi bez zarzutu napisać obiektowo. smile.gif. a oto kod php:

while(($wej_bd == true)&&($row > $w))
{
$ind = 0; $sprawdzenie_danych = 0; $kol = 0; $puste_pola = 0;

for($bd_s = $i; $bd_s <= $lkbd; $bd_s++)
{

if((($bd_s != 5) && ($bd_s != 6)) && (($bd_s != 9) && ($bd_s != 10))) // Pominięcie nie potrzebnych pól z excela.
{
if((((!empty($tabcsv[$w][$bd_s])) &&((empty($tabcsv[$w][4])) || (!empty($tabcsv[$w][4])))))&&((empty($tabcsv[$w][8])) || (!empty($tabcsv[$w][8]))))
{
if(!empty($tabcsv[$w][4]))
{
$tabcsv[$w][4] = str_replace(",",".",$tabcsv[$w][4]); //Zamiana ceny przecinka na kropkie
}

if((($bd_s == 1) || ($bd_s == 11))||(($bd_s == 12)||($bd_s == 4)))
{
if(is_numeric($tabcsv[$w][$bd_s])) {
$tabela_bd[$rekord][$kol] = $tabcsv[$w][$bd_s]; $kol++;
}
else
{
echo ' NIEZGODNY TYP DANYCH NA POZYCJI: '.$w.' '.$bd_s; $blad = true;
}
}
else
{
if((($bd_s == 2) || ($bd_s == 3))||(($bd_s == 7)||($bd_s == 8)))

if(!is_numeric($tabcsv[$w][$bd_s]))
{
$tabela_bd[$rekord][$kol] = $tabcsv[$w][$bd_s]; $kol++;
}
else
{
echo ' NIEZGODNY TYP DANYCH NA POZYCJI: '.$w.' '.$bd_s; $blad = true;
}
}
}
else
{
// $tabela_bd[$rekord][$kol] = $tabcsv[$w][$bd_s];
if($bd_s < $num)
if((empty($tabcsv[$w][$bd_s+1]))&&(empty($tabcsv[$w][$bd_s-1])))
{
// echo ' PUSTY REKORD NA POZYCJI: '.$w.' ZOSTAŁ USUNIĘTY ';
unset($tabela_bd[$rekord][$kol]);
}
else {
if(($bd_s != 4) && ($bd_s != 8)) {
echo ' PUSTE POLE NA POZYCJI: '.$w.' '.$bd_s;
$blad = true;
}
}
$kol++;
}
}
}

$w++; $rekord++;
}


} // KONIEC WERYFIKACJI POPRAWNOŚCI PLIKU

Chciałbym zamienić go na funkcję która zwróci ma tablicę dwuwymiarową $tabela_bd[$rekord][$kol]
Go to the top of the page
+Quote Post
blooregard
post
Post #4


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Proszę dodać BBCode.


--------------------
Life's simple... You make choices and don't look back...
Go to the top of the page
+Quote Post
nospor
post
Post #5





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




no to wsadź to w funkcję, która na koncu bedzie miala:
return $tabela_bd;
Gdzie widzisz problem? I uzywaj bbcode!


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
thek
post
Post #6





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Robisz to tak jak wszystko inne... Zwróć jako określoną strukturę. Jeśli za utworzenie będzie odpowiedzialna metoda, to w return ja zwracaj. A jeśli nie da się tylko są błędy to zwracaj choćby FALSE.


--------------------
Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
Go to the top of the page
+Quote Post
uczeń php
post
Post #7





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 8.01.2010

Ostrzeżenie: (0%)
-----


A może ktoś mi pomoże zamienić ten fragment kodu na funkcję bo coś mi nie wychodzi. Pozdro
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




To pokaz kod co napisales

ps: przenosze.
ps2: wlacz wyswietlanie wszyskich bledow
wiecej info tu:
Temat: Jak poprawnie zada pytanie


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
mortus
post
Post #9





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

Ostrzeżenie: (0%)
-----


Cytat
Chciałbym ten programik - który w strukturalnie działa mi bez zarzutu napisać obiektowo.
Cytat
Chciałbym zamienić go na funkcję która zwróci ma tablicę dwuwymiarową $tabela_bd[$rekord][$kol]
Co chcesz w końcu zrobić? Bo to, że ze skryptu napisanego strukturalnie zrobisz funkcję nie oznacza, że będzie to napisane obiektowo. Wręcz przeciwnie, nadal będzie to programowanie strukturalne.
Cytat
A może ktoś mi pomoże zamienić ten fragment kodu na funkcję bo coś mi nie wychodzi. Pozdro

Ale co Ci nie wychodzi, funkcji nie potrafisz zadeklarować
  1. function pobierzCSV($filename) {
  2. // pobieramy zawartość pliku $filename
  3. // przetwarzamy dane i umieszczamy je w tablicy $tab
  4. return $tab;
  5. }
Jako argument można, a nawet wypadałoby podawać nazwę pliku, bo ta może być zmienna.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 02:38