Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Hurtowa zamiana danych w tablicy
Jarod
post
Post #1





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

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


Mam tablicę $tablica, której kolejne elementy to wartości Tak, lub Nie.

Jak w miarę szybko zamienić w tej tablicy elementy Tak na 1 a elementy Nie na 0?

Myślałem o jakimś prem_match ale nie mogę tego załapać. Chciałbym uniknąć kopiowania w pętli for() danych do innej tablicy i w locie sprawdzać ifami..

Ten post edytował J4r0d 10.07.2006, 16:47:23
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mike
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Chcesz szybciej czy mniej kodu?
Bo tak się składa że te dwa pojęcia nie ide zawsze w parze.

Może i można wyrażeniami regularnymi ale na pewn będzie dlużej.
Tak jak powyżej jest chyba najszybciej.

A poza tym: czy to jest dużo kodu:
  1. <?
  2.  
  3. function zamiana( &$strElement )
  4. {
  5. if( $strElement == 'Tak' )
  6. {
  7. $strElement = 1;
  8. }
  9. elseif( $strElement == 'Nie' )
  10. {
  11. $strElement = 0;
  12. }
  13. }
  14.  
  15. $arrTab = array( 'Tak', 'Tak', 'Nie', 'Nie', 'Tak', 'Nie' );
  16.  
  17. array_walk( $arrTab, 'zamiana' );
  18.  
  19. ?>
Go to the top of the page
+Quote Post
Jarod
post
Post #3





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

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


Cytat(mike_mech @ 10.07.2006, 15:58 ) *
Chcesz szybciej czy mniej kodu?
Bo tak się składa że te dwa pojęcia nie ide zawsze w parze.


Wiem, że szybciej nie znaczy mniej kodu. Skoro mówisz, że jest szybciej to wierze (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) .

Okroiłem jeszcze
  1. <?php
  2. function zamianaUprawnien( &$elementTab )
  3. {
  4. if( $elementTab == 'Tak' ) $elementTab = 1;
  5. else $elementTab = 0;
  6. }
  7. ?>


Jeszcze raz dziękuje.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 15.10.2025 - 11:21