Ben mi yanlış anlattım bilemiyorum ama && ile şu an çalışıyor. Bu iki değer Array içerisinde geçiyor, herhangi birinin olması ya da her ikisinin de olması durumunda if içeriğinin çalışmaması gerekiyordu. || ile ikisinin de olduğu durumda çalışmıyor, ikisinden biri varsa çalışıyordu. in_array'ın başında da ! var bu arada, Array içerisinde yoksa şeklinde ters dönüyor.
Kafa karışıklığını gidermek adına bir örnek bırakıyorum. İkisinden biri kullanılabilir.
if ( !in_array(...) && !in_array(...) ) {
// Yapılması gerekenler
}if ( in_array(...) || in_array(...) ) {
} else {
// Yapılması gerekenler
}