function is_end_of_citation($str, $mean_line_length) { $is_end = false; //echo __LINE__ . " $str\n"; if (preg_match('/[|-|—|–](\\d+)\\.$/u', $str)) { //echo __LINE__ . "\n"; $is_end = true; } if (preg_match('/pp\\.(\\s+\\w+\\.)?$/', $str)) { $is_end = true; } // F C Thompson-style references if (preg_match('/([0-9]{2}|\\?\\?)\\]$/', $str)) { $is_end = true; } if (preg_match('/\\.\\]$/', $str)) { $is_end = true; } if (preg_match('/\\.$/', $str)) { if (strlen($str) < $mean_line_length) { if (!is_name($str)) { $is_end = true; } } } return $is_end; }
/** * 获取分类 * GET 获取 * cid int 栏目ID * fid int 父级别ID * name 预留 字段名称 * @return [type] [description] */ public function gettypes_ajax($cid = false, $fid = 0, $name = 'ctype') { $vdata = array('status' => 0, 'msg' => ""); if ($cid === false or !is_numeric($cid) or !is_numeric($fid) or $name or is_name($name)) { $vdata['status'] = 0; $vdata['msg'] = '提交数据格式不正确或非法数据'; } // 获取数据 // $data = $this->model->get_all(array('cid'=>$cid,'fid'=>$fid,'name'=>$name)); $data = $this->model->get_ctypes($cid, $fid, $name); if ($data) { $vdata['status'] = 1; $vdata['msg'] = '成功获取数据'; $vdata['list'] = $data; } else { $vdata['msg'] = '暂时任何数据!'; } // if ($this->input->is_ajax_request()) { $this->output->set_content_type('application/json')->set_output(json_encode($vdata)); // } }
function explode_place($arg) { global $all_names; $arg = trim($arg, " ,"); $parts = explode(" ", $arg); $parts = array_map(trim, $parts); $allParts = array(); for ($i = 0; $i < count($parts); $i++) { if (!empty($parts[$i])) { $allParts[] = $parts[$i]; } } $parts = $allParts; unset($allParts); while (TRUE) { $c1 = count($parts); for ($i = 0; $i < $c1; $i++) { if ($c1 >= $i + 1) { if (is_name($parts[$i] . " " . $parts[$i + 1])) { // dieses Array-Element mit dem vorherigen zusammenführen $parts[$i] .= " " . $parts[$i + 1]; array_splice($parts, $i + 1, 1); break; } if (is_name($parts[$i] . "-" . $parts[$i + 1])) { // dieses Array-Element mit dem vorherigen zusammenführen $parts[$i] .= "-" . $parts[$i + 1]; array_splice($parts, $i + 1, 1); break; } } if ($c1 >= $i + 2) { if (is_name($parts[$i] . " " . $parts[$i + 1] . " " . $parts[$i + 2])) { // dieses Array-Element mit dem vorherigen zusammenführen $parts[$i] .= " " . $parts[$i + 1] . " " . $parts[$i + 2]; array_splice($parts, $i + 1, 2); break; } if (is_name($parts[$i] . "-" . $parts[$i + 1] . "-" . $parts[$i + 2])) { // dieses Array-Element mit dem vorherigen zusammenführen $parts[$i] .= "-" . $parts[$i + 1] . "-" . $parts[$i + 2]; array_splice($parts, $i + 1, 2); break; } } } if (count($parts) == $c1) { break; } } if (count($parts) == 2) { if (is_place($parts[0])) { return array($parts[0], $parts[1]); } elseif (is_place($parts[1])) { return array($parts[1], $parts[0]); } elseif (is_name($parts[0])) { return array($parts[1], $parts[0]); } elseif (is_name($parts[1])) { return array($parts[0], $parts[1]); } else { return array($parts[0], $parts[1]); } } elseif (count($parts) == 1) { if (is_place($parts[1])) { return array($parts[0], ""); } elseif (is_name($parts[0])) { return array("", $parts[0]); } else { return array("", $parts[0]); } } elseif (count($parts) > 2) { return array($parts[0], $parts[1]); } }