Как использовать несколько флагов для функции php json_encode ()?
json_encode($array, JSON_PRETTY_PRINT, JSON_UNESCAPED_UNICODE); 
Это не сработает – так как только первый флаг будет выполнен, второй будет проигнорирован.
Вы используете битмаску, как указано в http://php.net/manual/en/function.json-encode.php :
 json_encode($array, JSON_PRETTY_PRINT|JSON_UNESCAPED_UNICODE); 
  Это добавит двоичные значения JSON_PRETTY_PRINT и JSON_UNESCAPED_UNICODE с двоичным оператором OR. 
Эти флаги – битмаски . Я писал об этом однажды давным-давно здесь, на SO .
Итак, в основном, чтобы использовать более одного варианта, вам нужно или их вместе
 json_encode($array, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);