В Cake нет ничего, что мешало бы поведению нативных функций PHP. Если вы опубликуете точный код, который вы используете в Cake, включая определение метода действия, люди смогут лучше вам помочь. Я думаю, если вы делаете что-то вроде этого
public function myaction()
{
$data = " One
Two
Three
Four";
$data = trim($data);
$data = preg_replace("/\n{2,}/", "\n", $data);
$data = explode("\n",$data);
var_dump($data);
}
Это означает, что \ n никогда не повторяется более одного раза (после \ n есть дополнительные пробелы. Большая проблема, которую вы видите, заключается в том, что ваше регулярное выражение не выполняет то, что, как вы думаете, должно происходить при запуске кода в Cake Выясните, почему это так, и вы решите свою проблему. Следующее регулярное выражение может оказаться более надежным
$data = preg_replace("/[\r\n]\s{0,}/", "\n", $data);