查询多行文本区域的每一行

时间:2018-04-29 08:15:29

标签: explode lines

在执行查询'isbn'字段时处理2n $line时失败。但是如果我查询'id'字段,它的效果非常好。我已经使用表中的数据严格测试了数据。知道为什么会这样吗?或者我该如何调试呢?

$massife = $this->Massives->patchEntity($massife, $this->request->getData());
$massiveTable = \Cake\ORM\TableRegistry::get('MassiveErrors', array('table' => 'massive_errors'));
$lines = explode("\n", $massife->data);
$documents = $this->loadModel('Documents');
foreach($lines as $line){
    $document = $documents->find('all')->where(['isbn' => $line]);
    $row = $document->first();
    $massiveError = $massiveTable->newEntity();
    if(!empty($row)){
    $massiveError->document_id = $row->id;
    $massiveTable->save($massiveError);
}

1 个答案:

答案 0 :(得分:0)

应该使用:

preg_split('/\r\n|\r|\n/',$massife->data)

而不是:

explode("\n", $massife->data)