Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Podmiana wartości z jednej tablicy do drugiej
Forum PHP.pl > Forum > Przedszkole
5w155
Mam 2 tablice:
  1. (
  2. [0] => stdClass Object
  3. (
  4. [zestaw] => przyzwolenia,podmiot,terazniejsze
  5. )
  6.  
  7. [1] => stdClass Object
  8. (
  9. [zestaw] => podmiot,miary,terazniejsze
  10. )
  11.  
  12. [2] => stdClass Object
  13. (
  14. [zestaw] => podmiot,miejsca,miary,terazniejsze
  15. )
  16.  
  17. [3] => stdClass Object
  18. (
  19. [zestaw] => podmiot,terazniejsze
  20. )
  21.  
  22. )

  1. (
  2. [0] => stdClass Object
  3. (
  4. [podtyp] => podmiot
  5. [ciag] => Natalia
  6. )
  7.  
  8. [1] => stdClass Object
  9. (
  10. [podtyp] => podmiot
  11. [ciag] => Ola
  12. )
  13.  
  14. [2] => stdClass Object
  15. (
  16. [podtyp] => podmiot
  17. [ciag] => Kasia
  18. )
  19.  
  20. [3] => stdClass Object
  21. (
  22. [podtyp] => podmiot
  23. [ciag] => Krysia
  24. )
  25.  
  26. [4] => stdClass Object
  27. (
  28. [podtyp] => terazniejsze
  29. [ciag] => grzeje
  30. )
  31.  
  32. [5] => stdClass Object
  33. (
  34. [podtyp] => terazniejsze
  35. [ciag] => tnie
  36. )
  37.  
  38. [6] => stdClass Object
  39. (
  40. [podtyp] => terazniejsze
  41. [ciag] => kroi
  42. )
  43.  
  44. [7] => stdClass Object
  45. (
  46. [podtyp] => terazniejsze
  47. [ciag] => maluje
  48. )
  49.  
  50. [8] => stdClass Object
  51. (
  52. [podtyp] => miary
  53. [ciag] => wolno
  54. )
  55.  
  56. [9] => stdClass Object
  57. (
  58. [podtyp] => miary
  59. [ciag] => rzadko
  60. )
  61.  
  62. [10] => stdClass Object
  63. (
  64. [podtyp] => przyzwolenia
  65. [ciag] => mimo problemów
  66. )
  67.  
  68. [11] => stdClass Object
  69. (
  70. [podtyp] => miejsca
  71. [ciag] => za domem
  72. )
  73.  
  74. )

Chcę, alby wg wzorca w pierwszej tabli ('zestaw'), losowo podmieniały się wartości z drugiej ('ciag') na podstawie pola ('podtyp').
piotrooo89
Cytat(5w155 @ 13.04.2010, 14:07:12 ) *
Chcę, alby wg wzorca w pierwszej tabli ('zestaw'), losowo podmieniały się wartości z drugiej ('ciag') na podstawie pola ('podtyp').


no i w czym problem? czego nie wiesz? bo ani kodu ani nic.
5w155
Chcę. aby stworzyło mi stringi wg wzorców w pierwszej tabeli, dobierając wyrazy z drugiej, które są pooznaczane przez podtyp, a właśnie z podtypów są podmienione wzorce.
piotrooo89
no dobrze, to działaj, albo podaj konkret w czym masz problem.
5w155
No jak to w czym? Nie wiem jak to podmienić. Co jest niejasnego w moim tłumaczeniu?
Jest np wzór w tablicy 1: podmiot,terazniejszy,miary

teraz chce wyszukac wyrazy spełniające taki schemat. Najduję klucz w drugiej tablicy podmiot: wyrzucam ciag do niego przypisany, itd
mortus
Proponowałbym inną strukturę danych i użycie array_rand. Masz przykład i sprawdź jak to działa:
[PHP] generator.zdan.php - pobierz, plaintext
  1. <?php
  2. $zestaw = array(0 => 'przyzwolenia,podmiot,terazniejsze', 1 => 'podmiot,miejsca,miary,terazniejsze', 3 => 'podmiot,miary,terazniejsze');
  3. $dane['podmiot'][] = 'Natalia';
  4. $dane['podmiot'][] = 'Ola';
  5. $dane['podmiot'][] = 'Kasia';
  6. $dane['podmiot'][] = 'Krysia';
  7. $dane['terazniejsze'][] = 'grzeje';
  8. $dane['terazniejsze'][] = 'tnie';
  9. $dane['terazniejsze'][] = 'kroi';
  10. $dane['terazniejsze'][] = 'maluje';
  11. $dane['miary'][] = 'rzadko';
  12. $dane['przyzwolenia'][] = 'mimo problemów';
  13. $dane['miejsca'][] = 'za domem';
  14.  
  15. echo '<pre>';
  16. print_r($zestaw);
  17. echo '</pre>';
  18.  
  19. echo '<pre>';
  20. print_r($dane);
  21. echo '</pre>';
  22.  
  23. $wylosowany_zestaw = $zestaw[array_rand($zestaw)];
  24. echo '<pre>';
  25. print_r($wylosowany_zestaw);
  26. echo '</pre>';
  27.  
  28. $zdanie = '';
  29. foreach(explode(',', $wylosowany_zestaw) as $podtyp => $rodzaj) {
  30. $zdanie .= $dane[$rodzaj][array_rand($dane[$rodzaj])] . ' ';
  31. }
  32. echo '<br />Zdanie: ' . $zdanie;
[PHP] generator.zdan.php - pobierz, plaintext
5w155
O to mi właśnie chodziło. + dla Ciebie!
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.