może temat nie do końca przedstawia to co chcę osiągnąć, ale do rzeczy.
Mam dwie tablice:
( 'id' => false, 'content' => false ); ( 'id' => 'nowe id', 'content' => 'nowy content' );
Pierwsza "existingCols" reprezentuje jakie kolumny istnieją w bazie danych, w tym przypadku ID i CONTENT, należąca do każdego klucza wartość boolean określa czy dana kolumna może przyjmować wartość null czy nie. W przypadku false nie może.
Druga "colsArray" reprezentuje te dane, które chcę dodać do bazy, ale musi współpracować z "existingCols" czyli:
Ta opcja, która jest teraz na górze jest ok, ale muszę sprawdzać czy tak jest (nie wiem jakie dane dostaje)...
Więc wyobrażam to sobie w ten sposób:
1) Dostaję konkretne dane w postaci JSON (przekształcam na array), odczytuje z niego klucze i wartości. ($colsArray)
- do tej pory jest ok
2) Teraz te dane, które otrzymałem muszę porównać z $existingCols czy wszystko się zgadza, czy wysłane klucze zgadzają się ze wzorem i czy te klucze mogą być pominięte.
np. mogę wysłać:
-- id = 2
ale już nie muszę wysyłać content, jeśli ten ma ustawione true.
w powyższym przypadku muszę wysłać id i content żeby wszystko było spełnione.
- i tutaj zaczyna się problem
myślałem o zrobieniu czegoś na wzór:
foreach ($existingCols as $key => $value) { foreach ($colsArray as $key2 => $value2) { // tutaj porównanie za pomocą in_array, ale nie przeszło to... pewnie dlatego, że w końcu klucze mu się mieszały itd } }
drugą opcją było użycie array_search i array_keys, ale nie miałem i nadal nie mam wizji na to...
Mam nadzieję, że ktoś rozumie moją wypowiedź w tym temacie.