Since the new connection handling / MongoClient introduction there is no way to set if a query should run on a secondary per cursor (request), however the documentation does not mention this. In http:://php.net/manual/en/mongocursor.slaveokay.php it explicitly states that reads would go to secondaries, if conditions are met. Either the documentation should mention this or this should be fixed (unlikely, right?).
This prevents us from upgrading past 1.2.x, since we use this extensively. By default we have all finds go to the primary and then specify which finds should go to secondaries when constructing the query.
Here is a test I used: