|
|
@@ -8,10 +8,10 @@ require_once "../public/load_lang.php"; //语言文件
|
|
|
require_once "../public/function.php";
|
|
|
require_once "../search/word_function.php";
|
|
|
require_once "../ucenter/active.php";
|
|
|
+require_once "../dict/p_ending.php";
|
|
|
|
|
|
_load_book_index();
|
|
|
|
|
|
-$op = $_GET["op"];
|
|
|
$word = mb_strtolower($_GET["word"], 'UTF-8');
|
|
|
$org_word = $word;
|
|
|
|
|
|
@@ -20,368 +20,335 @@ $dict_list = array();
|
|
|
|
|
|
$right_word_list = "";
|
|
|
|
|
|
-global $PDO;
|
|
|
-function isExsit($word)
|
|
|
-{
|
|
|
- global $PDO;
|
|
|
- $query = "SELECT count(*) as co from " . _TABLE_DICT_REF_ . " where word = ? ";
|
|
|
- $row = PDO_FetchOne($query, array($word));
|
|
|
- if ($row[0] == 0) {
|
|
|
- return false;
|
|
|
- } else {
|
|
|
- return true;
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-function myfunction($v1, $v2)
|
|
|
-{
|
|
|
- return $v1 . "+" . $v2;
|
|
|
-}
|
|
|
-
|
|
|
-function mySplit($strWord)
|
|
|
-{
|
|
|
- //echo("<br>".$strWord."<br>");
|
|
|
- $doubleword = "kkggccjjṭṭḍḍttddppbb";
|
|
|
- $len = mb_strlen($strWord, "UTF-8");
|
|
|
- if ($len > 5) {
|
|
|
- for ($i = $len - 1; $i > 3; $i--) {
|
|
|
- $str1 = mb_substr($strWord, 0, $i, "UTF-8");
|
|
|
- $str2 = mb_substr($strWord, $i, null, "UTF-8");
|
|
|
- //echo "$str1 + $str2 = ";
|
|
|
- if (isExsit($str1)) {
|
|
|
- //echo "match";
|
|
|
- $left2 = mb_substr($str2, 0, 2, "UTF-8");
|
|
|
- if (mb_strpos($doubleword, $left2, 0, "UTF-8") !== false) {
|
|
|
- $str2 = mb_substr($str2, 1, null, "UTF-8");
|
|
|
+ add_edit_event(_DICT_LOOKUP_, $word);
|
|
|
+ echo "<div id='dict_list_shell' onclick='setNaviVisibility()'>";
|
|
|
+ echo "<div id='dict_list' class='dict_list_off'></div>";
|
|
|
+ echo "</div>";
|
|
|
+ echo "<div id='dict_ref'>";
|
|
|
+ echo "<div id='search_result_shell'></div>";
|
|
|
+ echo "<div class='pali_spell'><a name='{word_$word}'></a>" . $word . "</div>";
|
|
|
+ $dict_list_a = [];
|
|
|
+ //社区字典开始
|
|
|
+ PDO_Connect("" . _FILE_DB_WBW_);
|
|
|
+ $query = "SELECT * from " . _TABLE_DICT_REF_ . " where pali = ? limit 0,100";
|
|
|
+ $Fetch = PDO_FetchAll($query, array($word));
|
|
|
+ $iFetch = count($Fetch);
|
|
|
+ $count_return += $iFetch;
|
|
|
+ if ($iFetch > 0) {
|
|
|
+ $userlist = array();
|
|
|
+ foreach ($Fetch as $value) {
|
|
|
+ if (isset($userlist[$value["creator"]])) {
|
|
|
+ $userlist[$value["creator"]] += 1;
|
|
|
+ } else {
|
|
|
+ $userlist[$value["creator"]] = 1;
|
|
|
}
|
|
|
- return array($str1, $str2);
|
|
|
- } else {
|
|
|
- $str1 = $str1 . "a";
|
|
|
- if (isExsit($str1)) {
|
|
|
- //echo "match";
|
|
|
- $left2 = mb_substr($str2, 0, 2, "UTF-8");
|
|
|
- if (mb_strpos($doubleword, $left2, 0, "UTF-8") !== false) {
|
|
|
- $str2 = mb_substr($str2, 1, null, "UTF-8");
|
|
|
- }
|
|
|
- return array($str1, $str2);
|
|
|
+ $userwordcase = $value["type"] . "#" . $value["gramma"];
|
|
|
+ if (isset($userdict["{$userwordcase}"])) {
|
|
|
+ $userdict["{$userwordcase}"]["mean"] .= $value["mean"] . ";";
|
|
|
+ $userdict["{$userwordcase}"]["factors"] .= $value["factors"];
|
|
|
+ } else {
|
|
|
+ $userdict["{$userwordcase}"]["mean"] = $value["mean"];
|
|
|
+ $userdict["{$userwordcase}"]["factors"] = $value["factors"];
|
|
|
}
|
|
|
+
|
|
|
+ }
|
|
|
+ echo "<div class='dict_word'>";
|
|
|
+ echo "<div class='dict'>{$_local->gui->com_dict}</div><a name='net'></a>";
|
|
|
+ $dict_list_a[] = array("net", $_local->gui->com_dict);
|
|
|
+
|
|
|
+ foreach ($userdict as $key => $value) {
|
|
|
+ echo "<div class='mean'>{$key}:{$value["mean"]}</div>";
|
|
|
}
|
|
|
+ echo "<div><span>{$_local->gui->contributor}:</span>";
|
|
|
+ foreach ($userlist as $key => $value) {
|
|
|
+ echo $key . "[" . $value . "]";
|
|
|
+ }
|
|
|
+ echo "</div>";
|
|
|
+ echo "</div>";
|
|
|
}
|
|
|
- //not found
|
|
|
- if (mb_substr($strWord, 0, 1, "UTF-8") == "ā") {
|
|
|
- $strWord = 'a' . mb_substr($strWord, 1, null, "UTF-8");
|
|
|
- for ($i = $len - 1; $i > 3; $i--) {
|
|
|
- $str1 = mb_substr($strWord, 0, $i, "UTF-8");
|
|
|
- $str2 = mb_substr($strWord, $i, null, "UTF-8");
|
|
|
- //echo "$str1 + $str2 = ";
|
|
|
- if (isExsit($str1)) {
|
|
|
- //echo "match";
|
|
|
- $left2 = mb_substr($str2, 0, 2, "UTF-8");
|
|
|
- if (mb_strpos($doubleword, $left2, 0, "UTF-8") !== false) {
|
|
|
- $str2 = mb_substr($str2, 1, null, "UTF-8");
|
|
|
+ //社区字典结束
|
|
|
+
|
|
|
+ PDO_Connect("" . _FILE_DB_REF_);
|
|
|
+ //直接查询
|
|
|
+ $query = "SELECT dict.dict_id,dict.mean,info.shortname from " . _TABLE_DICT_REF_ . " LEFT JOIN info ON dict.dict_id = info.id where word = ? limit 0,100";
|
|
|
+
|
|
|
+ $Fetch = PDO_FetchAll($query, array($word));
|
|
|
+ $iFetch = count($Fetch);
|
|
|
+ $count_return += $iFetch;
|
|
|
+ if ($iFetch > 0) {
|
|
|
+ for ($i = 0; $i < $iFetch; $i++) {
|
|
|
+ $mean = $Fetch[$i]["mean"];
|
|
|
+ $dictid = $Fetch[$i]["dict_id"];
|
|
|
+ $dict_list[$dictid] = $Fetch[$i]["shortname"];
|
|
|
+ $dict_list_a[] = array("ref_dict_$dictid", $Fetch[$i]["shortname"]);
|
|
|
+ $outXml = "<div class='dict_word'>";
|
|
|
+ $outXml = $outXml . "<a name='ref_dict_$dictid'></a>";
|
|
|
+ $outXml = $outXml . "<div class='dict'>" . $Fetch[$i]["shortname"] . "</div>";
|
|
|
+ $outXml = $outXml . "<div class='mean'>" . $mean . "</div>";
|
|
|
+ $outXml = $outXml . "</div>";
|
|
|
+ echo $outXml;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ //去格位除尾查
|
|
|
+ $newWord = array();
|
|
|
+ for ($row = 0; $row < count($case); $row++) {
|
|
|
+ $len = mb_strlen($case[$row][1], "UTF-8");
|
|
|
+ $end = mb_substr($word, 0 - $len, null, "UTF-8");
|
|
|
+ if ($end == $case[$row][1]) {
|
|
|
+ $base = mb_substr($word, 0, mb_strlen($word, "UTF-8") - $len, "UTF-8") . $case[$row][0];
|
|
|
+ if ($base != $word) {
|
|
|
+ $thiscase = "";
|
|
|
+ $arrCase = explode('$', $case[$row][2]);
|
|
|
+ foreach ($arrCase as $value) {
|
|
|
+ $caseid = "grammar_" . str_replace('.', '', $value);
|
|
|
+ $thiscase .= "<guide gid='$caseid'>$value</guide>";
|
|
|
}
|
|
|
- return array($str1, $str2);
|
|
|
- } else {
|
|
|
- $str1 = $str1 . "a";
|
|
|
- if (isExsit($str1)) {
|
|
|
- //echo "match";
|
|
|
- $left2 = mb_substr($str2, 0, 2, "UTF-8");
|
|
|
- if (mb_strpos($doubleword, $left2, 0, "UTF-8") !== false) {
|
|
|
- $str2 = mb_substr($str2, 1, null, "UTF-8");
|
|
|
- }
|
|
|
- return array($str1, $str2);
|
|
|
+
|
|
|
+ if (isset($newWord[$base])) {
|
|
|
+ $newWord[$base] .= "<br />" . $thiscase;
|
|
|
+ } else {
|
|
|
+ $newWord[$base] = $thiscase;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- //not found
|
|
|
- if (mb_substr($strWord, 0, 1, "UTF-8") == "e") {
|
|
|
- $strWord = 'i' . mb_substr($strWord, 1, null, "UTF-8");
|
|
|
- for ($i = $len - 1; $i > 3; $i--) {
|
|
|
- $str1 = mb_substr($strWord, 0, $i, "UTF-8");
|
|
|
- $str2 = mb_substr($strWord, $i, null, "UTF-8");
|
|
|
- //echo "$str1 + $str2 = ";
|
|
|
- if (isExsit($str1)) {
|
|
|
- //echo "match";
|
|
|
- $left2 = mb_substr($str2, 0, 2, "UTF-8");
|
|
|
- if (mb_strpos($doubleword, $left2, 0, "UTF-8") !== false) {
|
|
|
- $str2 = mb_substr($str2, 1, null, "UTF-8");
|
|
|
+
|
|
|
+ $base_list = array();
|
|
|
+ if (count($newWord) > 0) {
|
|
|
+ foreach ($newWord as $x => $x_value) {
|
|
|
+ $query = "SELECT dict.dict_id,dict.mean,info.shortname from " . _TABLE_DICT_REF_ . " LEFT JOIN info ON dict.dict_id = info.id where word = ? limit 0,30";
|
|
|
+ $Fetch = PDO_FetchAll($query, array($x));
|
|
|
+ $iFetch = count($Fetch);
|
|
|
+ $count_return += $iFetch;
|
|
|
+ if ($iFetch > 0) {
|
|
|
+ $base_list[] = $x;
|
|
|
+ $dict_list_a[] = array("word_$x", $x);
|
|
|
+ echo "<div class='pali_spell'><a name='word_$x'></a>" . $x . "</div>";
|
|
|
+ //语法信息
|
|
|
+ foreach ($_local->grammastr as $gr) {
|
|
|
+ $x_value = str_replace($gr->id, $gr->value, $x_value);
|
|
|
}
|
|
|
- return array($str1, $str2);
|
|
|
- } else {
|
|
|
- $str1 = $str1 . "a";
|
|
|
- if (isExsit($str1)) {
|
|
|
- //echo "match";
|
|
|
- $left2 = mb_substr($str2, 0, 2, "UTF-8");
|
|
|
- if (mb_strpos($doubleword, $left2, 0, "UTF-8") !== false) {
|
|
|
- $str2 = mb_substr($str2, 1, null, "UTF-8");
|
|
|
- }
|
|
|
- return array($str1, $str2);
|
|
|
+ echo "<div class='dict_find_gramma'>" . $x_value . "</div>";
|
|
|
+ for ($i = 0; $i < $iFetch; $i++) {
|
|
|
+ $mean = $Fetch[$i]["mean"];
|
|
|
+ $dictid = $Fetch[$i]["dict_id"];
|
|
|
+ $dict_list[$dictid] = $Fetch[$i]["shortname"];
|
|
|
+ $dict_list_a[] = array("ref_dict_$dictid", $Fetch[$i]["shortname"]);
|
|
|
+ echo "<div class='dict_word'>";
|
|
|
+ echo "<a name='ref_dict_$dictid'></a>";
|
|
|
+ echo "<div class='dict'>" . $Fetch[$i]["shortname"] . "</div>";
|
|
|
+ echo "<div class='mean'>" . $mean . "</div>";
|
|
|
+ echo "</div>";
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
- return (false);
|
|
|
-}
|
|
|
+ //去除尾查结束
|
|
|
|
|
|
-add_edit_event(_DICT_LOOKUP_, $word);
|
|
|
-echo "<div id='dict_list_shell' onclick='setNaviVisibility()'><div id='dict_list' class='dict_list_off'></div></div>";
|
|
|
-echo "<div id='dict_ref'>";
|
|
|
-$dict_list_a = [];
|
|
|
-//社区字典开始
|
|
|
-PDO_Connect("" . _FILE_DB_WBW_);
|
|
|
-$query = "SELECT * from " . _TABLE_DICT_REF_ . " where pali = ? limit 0,100";
|
|
|
-$Fetch = PDO_FetchAll($query, array($word));
|
|
|
-$iFetch = count($Fetch);
|
|
|
-$count_return += $iFetch;
|
|
|
-if ($iFetch > 0) {
|
|
|
- $userlist = array();
|
|
|
- foreach ($Fetch as $value) {
|
|
|
- if (isset($userlist[$value["creator"]])) {
|
|
|
- $userlist[$value["creator"]] += 1;
|
|
|
- } else {
|
|
|
- $userlist[$value["creator"]] = 1;
|
|
|
- }
|
|
|
- $userwordcase = $value["type"] . "#" . $value["gramma"];
|
|
|
- if (isset($userdict["{$userwordcase}"])) {
|
|
|
- $userdict["{$userwordcase}"]["mean"] .= $value["mean"] . ";";
|
|
|
- $userdict["{$userwordcase}"]["factors"] .= $value["factors"];
|
|
|
- } else {
|
|
|
- $userdict["{$userwordcase}"]["mean"] = $value["mean"];
|
|
|
- $userdict["{$userwordcase}"]["factors"] = $value["factors"];
|
|
|
- }
|
|
|
+ //去分词除尾查
|
|
|
+ $arrBase = array();
|
|
|
+ if (count($newWord) > 0) {
|
|
|
+ foreach ($newWord as $base => $grammar){
|
|
|
+ for ($row = 0; $row < count($p_ending); $row++) {
|
|
|
+ $len = mb_strlen($case[$row][1], "UTF-8");
|
|
|
+ $end = mb_substr($base, 0 - $len, null, "UTF-8");
|
|
|
+ if ($end == $p_ending[$row][1]) {
|
|
|
+ $newbase = mb_substr($base, 0, mb_strlen($base, "UTF-8") - $len, "UTF-8") . $p_ending[$row][0];
|
|
|
+ if ($newbase != $base) {
|
|
|
+ $thiscase = "";
|
|
|
+ $arrCase = explode('$', $p_ending[$row][2]);
|
|
|
+ foreach ($arrCase as $value) {
|
|
|
+ $caseid = "grammar_" . str_replace('.', '', $value);
|
|
|
+ $thiscase .= "<guide gid='$caseid'>$value</guide>";
|
|
|
+ }
|
|
|
|
|
|
- }
|
|
|
- echo "<div class='dict_word'>";
|
|
|
- echo "<div class='dict'>{$_local->gui->com_dict}</div><a name='net'></a>";
|
|
|
- $dict_list_a[] = array("net", $_local->gui->com_dict);
|
|
|
+ if (isset($arrBase[$newbase])) {
|
|
|
+ $arrBase[$newbase]['grammar'] .= "<br />" . $thiscase;
|
|
|
+ } else {
|
|
|
+ $arrBase[$newbase]['grammar'] = $thiscase;
|
|
|
+ $arrBase[$newbase]['parent'] = $base;
|
|
|
|
|
|
- foreach ($userdict as $key => $value) {
|
|
|
- echo "<div class='mean'>{$key}:{$value["mean"]}</div>";
|
|
|
- }
|
|
|
- echo "<div><span>{$_local->gui->contributor}:</span>";
|
|
|
- foreach ($userlist as $key => $value) {
|
|
|
- echo $key . "[" . $value . "]";
|
|
|
- }
|
|
|
- echo "</div>";
|
|
|
- echo "</div>";
|
|
|
-}
|
|
|
-//社区字典结束
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
-PDO_Connect("" . _FILE_DB_REF_);
|
|
|
-//直接查询
|
|
|
-$query = "SELECT dict.dict_id,dict.mean,info.shortname from " . _TABLE_DICT_REF_ . " LEFT JOIN info ON dict.dict_id = info.id where word = ? limit 0,100";
|
|
|
+ $base_list = array();
|
|
|
+ if (count($arrBase) > 0) {
|
|
|
+ foreach ($arrBase as $x => $x_value) {
|
|
|
+ $query = "SELECT dict.dict_id,dict.mean,info.shortname from " . _TABLE_DICT_REF_ . " LEFT JOIN info ON dict.dict_id = info.id where word = ? limit 0,30";
|
|
|
+ $Fetch = PDO_FetchAll($query, array($x));
|
|
|
+ $iFetch = count($Fetch);
|
|
|
+ $count_return += $iFetch;
|
|
|
+ if ($iFetch > 0) {
|
|
|
+ $base_list[] = $x;
|
|
|
+ $dict_list_a[] = array("word_$x", $x);
|
|
|
+ echo "<div class='pali_spell'><a name='word_$x'></a>" . $x . "</div>";
|
|
|
+ echo "<div style='color:gray;'>{$x}->{$x_value["parent"]}->{$word}</div>";
|
|
|
+ //语法信息
|
|
|
+ foreach ($_local->grammastr as $gr) {
|
|
|
+ $x_value['grammar'] = str_replace($gr->id, $gr->value, $x_value['grammar']);
|
|
|
+ }
|
|
|
+ echo "<div class='dict_find_gramma'>" . $x_value['grammar'] . "</div>";
|
|
|
+ for ($i = 0; $i < $iFetch; $i++) {
|
|
|
+ $mean = $Fetch[$i]["mean"];
|
|
|
+ $dictid = $Fetch[$i]["dict_id"];
|
|
|
+ $dict_list[$dictid] = $Fetch[$i]["shortname"];
|
|
|
+ $dict_list_a[] = array("ref_dict_$dictid", $Fetch[$i]["shortname"]);
|
|
|
+ echo "<div class='dict_word'>";
|
|
|
+ echo "<a name='ref_dict_$dictid'></a>";
|
|
|
+ echo "<div class='dict'>" . $Fetch[$i]["shortname"] . "</div>";
|
|
|
+ echo "<div class='mean'>" . $mean . "</div>";
|
|
|
+ echo "</div>";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //去除尾查结束
|
|
|
|
|
|
-$Fetch = PDO_FetchAll($query, array($word));
|
|
|
-$iFetch = count($Fetch);
|
|
|
-$count_return += $iFetch;
|
|
|
-if ($iFetch > 0) {
|
|
|
- for ($i = 0; $i < $iFetch; $i++) {
|
|
|
- $mean = $Fetch[$i]["mean"];
|
|
|
- $dictid = $Fetch[$i]["dict_id"];
|
|
|
- $dict_list[$dictid] = $Fetch[$i]["shortname"];
|
|
|
- $dict_list_a[] = array("ref_dict_$dictid", $Fetch[$i]["shortname"]);
|
|
|
- $outXml = "<div class='dict_word'>";
|
|
|
- $outXml = $outXml . "<a name='ref_dict_$dictid'></a>";
|
|
|
- $outXml = $outXml . "<div class='dict'>" . $Fetch[$i]["shortname"] . "</div>";
|
|
|
- $outXml = $outXml . "<div class='mean'>" . $mean . "</div>";
|
|
|
- $outXml = $outXml . "</div>";
|
|
|
- echo $outXml;
|
|
|
- }
|
|
|
-}
|
|
|
-//去除尾查
|
|
|
-$newWord = array();
|
|
|
-for ($row = 0; $row < count($case); $row++) {
|
|
|
- $len = mb_strlen($case[$row][1], "UTF-8");
|
|
|
- $end = mb_substr($word, 0 - $len, null, "UTF-8");
|
|
|
- if ($end == $case[$row][1]) {
|
|
|
- $base = mb_substr($word, 0, mb_strlen($word, "UTF-8") - $len, "UTF-8") . $case[$row][0];
|
|
|
- if ($base != $word) {
|
|
|
- $thiscase = "";
|
|
|
- $arrCase = explode('$', $case[$row][2]);
|
|
|
- foreach ($arrCase as $value) {
|
|
|
- $caseid = "grammar_" . str_replace('.', '', $value);
|
|
|
- $thiscase .= "<guide gid='$caseid'>$value</guide>";
|
|
|
- }
|
|
|
|
|
|
- if (isset($newWord[$base])) {
|
|
|
- $newWord[$base] .= "<br />" . $thiscase;
|
|
|
- } else {
|
|
|
- $newWord[$base] = $thiscase;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
+ echo "<div id='search_summary'>";
|
|
|
+ echo "查询{$word} 共{$count_return}条 ";
|
|
|
+ if(count($base_list)>0){
|
|
|
+ echo "找到可能的拼写: ";
|
|
|
+ foreach ($base_list as $key => $value) {
|
|
|
+ # code...
|
|
|
+ echo "<a>{$value}</a> ";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ echo "</div>";
|
|
|
+ echo "<input type='hidden' id='word_count' value='{$count_return}' />";
|
|
|
|
|
|
-if (count($newWord) > 0) {
|
|
|
- foreach ($newWord as $x => $x_value) {
|
|
|
- $query = "SELECT dict.dict_id,dict.mean,info.shortname from " . _TABLE_DICT_REF_ . " LEFT JOIN info ON dict.dict_id = info.id where word = ? limit 0,30";
|
|
|
- $Fetch = PDO_FetchAll($query, array($x));
|
|
|
- $iFetch = count($Fetch);
|
|
|
- $count_return += $iFetch;
|
|
|
- if ($iFetch > 0) {
|
|
|
- $dict_list_a[] = array("word_$x", $x);
|
|
|
- echo "<div style='font-size:120%;font-weight:700;'><a name='word_$x'></a>" . $x . "</div>";
|
|
|
- //语法信息
|
|
|
- foreach ($_local->grammastr as $gr) {
|
|
|
- $x_value = str_replace($gr->id, $gr->value, $x_value);
|
|
|
+ //查连读词
|
|
|
+ if ($count_return < 2) {
|
|
|
+ echo "<div>Junction</div>";
|
|
|
+ $newWord = array();
|
|
|
+ for ($row = 0; $row < count($un); $row++) {
|
|
|
+ $len = mb_strlen($un[$row][1], "UTF-8");
|
|
|
+ $end = mb_substr($word, 0 - $len, null, "UTF-8");
|
|
|
+ if ($end == $un[$row][1]) {
|
|
|
+ $base = mb_substr($word, 0, mb_strlen($word, "UTF-8") - $len, "UTF-8") . $un[$row][0];
|
|
|
+ $arr_un = explode("+", $base);
|
|
|
+ foreach ($arr_un as $oneword) {
|
|
|
+ echo "<a onclick='dict_pre_word_click(\"$oneword\")'>$oneword</a> + ";
|
|
|
+ }
|
|
|
+ echo "<br />";
|
|
|
+ }
|
|
|
}
|
|
|
- echo "<div class='dict_find_gramma'>" . $x_value . "</div>";
|
|
|
- for ($i = 0; $i < $iFetch; $i++) {
|
|
|
- $mean = $Fetch[$i]["mean"];
|
|
|
- $dictid = $Fetch[$i]["dict_id"];
|
|
|
- $dict_list[$dictid] = $Fetch[$i]["shortname"];
|
|
|
- $dict_list_a[] = array("ref_dict_$dictid", $Fetch[$i]["shortname"]);
|
|
|
- echo "<div class='dict_word'>";
|
|
|
- echo "<a name='ref_dict_$dictid'></a>";
|
|
|
- echo "<div class='dict'>" . $Fetch[$i]["shortname"] . "</div>";
|
|
|
- echo "<div class='mean'>" . $mean . "</div>";
|
|
|
- echo "</div>";
|
|
|
+ }
|
|
|
+
|
|
|
+ //拆复合词
|
|
|
+ echo "<div id='auto_split'></div>";
|
|
|
+
|
|
|
+/*
|
|
|
+ //查内容
|
|
|
+ if ($count_return < 2) {
|
|
|
+ $word1 = $org_word;
|
|
|
+ $wordInMean = "%$org_word%";
|
|
|
+ echo "包含 $org_word 的:<br />";
|
|
|
+ $query = "SELECT dict.dict_id,dict.word,dict.mean,info.shortname from " . _TABLE_DICT_REF_ . " LEFT JOIN info ON dict.dict_id = info.id where mean like ? limit 0,30";
|
|
|
+ $Fetch = PDO_FetchAll($query, array($wordInMean));
|
|
|
+ $iFetch = count($Fetch);
|
|
|
+ $count_return += $iFetch;
|
|
|
+ if ($iFetch > 0) {
|
|
|
+ for ($i = 0; $i < $iFetch; $i++) {
|
|
|
+ $mean = $Fetch[$i]["mean"];
|
|
|
+ $pos = mb_stripos($mean, $word, 0, "UTF-8");
|
|
|
+ if ($pos) {
|
|
|
+ if ($pos > 20) {
|
|
|
+ $start = $pos - 20;
|
|
|
+ } else {
|
|
|
+ $start = 0;
|
|
|
+ }
|
|
|
+ $newmean = mb_substr($mean, $start, 100, "UTF-8");
|
|
|
+ } else {
|
|
|
+ $newmean = $mean;
|
|
|
+ }
|
|
|
+ $pos = mb_stripos($newmean, $word1, 0, "UTF-8");
|
|
|
+ $head = mb_substr($newmean, 0, $pos, "UTF-8");
|
|
|
+ $mid = mb_substr($newmean, $pos, mb_strlen($word1, "UTF-8"), "UTF-8");
|
|
|
+ $end = mb_substr($newmean, $pos + mb_strlen($word1, "UTF-8"), null, "UTF-8");
|
|
|
+ $heigh_light_mean = "$head<hl>$mid</hl>$end";
|
|
|
+ echo "<div class='dict_word'>";
|
|
|
+ echo "<div class='pali'>" . $Fetch[$i]["word"] . "</div>";
|
|
|
+ echo "<div class='dict'>" . $Fetch[$i]["shortname"] . "</div>";
|
|
|
+ echo "<div class='mean'>" . $heigh_light_mean . "</div>";
|
|
|
+ echo "</div>";
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
-}
|
|
|
-//去除尾查结束
|
|
|
-
|
|
|
-//查连读词
|
|
|
-if ($count_return < 2) {
|
|
|
- echo "<div>Junction</div>";
|
|
|
- $newWord = array();
|
|
|
- for ($row = 0; $row < count($un); $row++) {
|
|
|
- $len = mb_strlen($un[$row][1], "UTF-8");
|
|
|
- $end = mb_substr($word, 0 - $len, null, "UTF-8");
|
|
|
- if ($end == $un[$row][1]) {
|
|
|
- $base = mb_substr($word, 0, mb_strlen($word, "UTF-8") - $len, "UTF-8") . $un[$row][0];
|
|
|
- $arr_un = explode("+", $base);
|
|
|
- foreach ($arr_un as $oneword) {
|
|
|
- echo "<a onclick='dict_pre_word_click(\"$oneword\")'>$oneword</a> + ";
|
|
|
+*/
|
|
|
+ echo "<div id='dictlist'>";
|
|
|
+ foreach ($dict_list_a as $x_value) {
|
|
|
+ if (substr($x_value[0], 0, 4) == "word") {
|
|
|
+ echo "<div class='pali_spell'>";
|
|
|
+ echo "<a href='#{$x_value[0]}'>$x_value[1]</a></div>";
|
|
|
+ } else {
|
|
|
+ echo "<div><a href='#{$x_value[0]}'>$x_value[1]</a></div>";
|
|
|
}
|
|
|
- echo "<br />";
|
|
|
}
|
|
|
- }
|
|
|
-}
|
|
|
+ echo "<div>";
|
|
|
|
|
|
-//查内容
|
|
|
-if ($count_return < 2) {
|
|
|
- $word1 = $org_word;
|
|
|
- $wordInMean = "%$org_word%";
|
|
|
- echo "include $org_word:<br />";
|
|
|
- $query = "SELECT dict.dict_id,dict.word,dict.mean,info.shortname from " . _TABLE_DICT_REF_ . " LEFT JOIN info ON dict.dict_id = info.id where mean like ? limit 0,30";
|
|
|
- $Fetch = PDO_FetchAll($query, array($wordInMean));
|
|
|
- $iFetch = count($Fetch);
|
|
|
- $count_return += $iFetch;
|
|
|
- if ($iFetch > 0) {
|
|
|
- for ($i = 0; $i < $iFetch; $i++) {
|
|
|
- $mean = $Fetch[$i]["mean"];
|
|
|
- $pos = mb_stripos($mean, $word, 0, "UTF-8");
|
|
|
- if ($pos) {
|
|
|
- if ($pos > 20) {
|
|
|
- $start = $pos - 20;
|
|
|
- } else {
|
|
|
- $start = 0;
|
|
|
- }
|
|
|
- $newmean = mb_substr($mean, $start, 100, "UTF-8");
|
|
|
+ $arrWords = countWordInPali($word, true);
|
|
|
+ $weight = 0;
|
|
|
+ foreach ($arrWords as $oneword) {
|
|
|
+ $weight += $oneword["count"] * $oneword["len"];
|
|
|
+ }
|
|
|
+ //echo "<div>{$_local->gui->word_weight}:$weight {$_local->gui->characters}</div>";
|
|
|
+ //echo "<div>{$_local->gui->real_declension}:".count($arrWords)." {$_local->gui->forms}</div>";
|
|
|
+ $right_word_list .= "<div>{$_local->gui->word_weight}:$weight {$_local->gui->characters}</div>";
|
|
|
+ $right_word_list .= "<div>{$_local->gui->real_declension}:" . count($arrWords) . " {$_local->gui->forms}</div>";
|
|
|
+ foreach ($arrWords as $oneword) {
|
|
|
+ if ($oneword["bold"] > 0) {
|
|
|
+ //echo "<div><b>{$oneword["word"]}</b> {$oneword["count"]} {$_local->gui->times}</div>";
|
|
|
+ $right_word_list .= "<div><b>{$oneword["word"]}</b> {$oneword["count"]} {$_local->gui->times}</div>";
|
|
|
} else {
|
|
|
- $newmean = $mean;
|
|
|
+ //echo "<div>{$oneword["word"]} {$oneword["count"]}{$_local->gui->times}</div>";
|
|
|
+ $right_word_list .= "<div>{$oneword["word"]} {$oneword["count"]}{$_local->gui->times}</div>";
|
|
|
}
|
|
|
- $pos = mb_stripos($newmean, $word1, 0, "UTF-8");
|
|
|
- $head = mb_substr($newmean, 0, $pos, "UTF-8");
|
|
|
- $mid = mb_substr($newmean, $pos, mb_strlen($word1, "UTF-8"), "UTF-8");
|
|
|
- $end = mb_substr($newmean, $pos + mb_strlen($word1, "UTF-8"), null, "UTF-8");
|
|
|
- $heigh_light_mean = "$head<hl>$mid</hl>$end";
|
|
|
- echo "<div class='dict_word'>";
|
|
|
- echo "<div class='pali'>" . $Fetch[$i]["word"] . "</div>";
|
|
|
- echo "<div class='dict'>" . $Fetch[$i]["shortname"] . "</div>";
|
|
|
- echo "<div class='mean'>" . $heigh_light_mean . "</div>";
|
|
|
- echo "</div>";
|
|
|
}
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-//拆复合词
|
|
|
+ echo "</div>";
|
|
|
+ echo "</div>";
|
|
|
+ echo "</div>";
|
|
|
+ //参考字典查询结束
|
|
|
|
|
|
-$splitWord = $word;
|
|
|
-$part = array();
|
|
|
-if ($count_return < 2) {
|
|
|
- echo "Try to split comp:<br>";
|
|
|
- while (($split = mySplit($splitWord)) !== false) {
|
|
|
- array_push($part, $split[0]);
|
|
|
- $splitWord = $split[1];
|
|
|
- }
|
|
|
- if (count($part) > 0) {
|
|
|
- array_push($part, $splitWord);
|
|
|
- $newPart = ltrim(array_reduce($part, "myfunction"), "+");
|
|
|
- echo $newPart;
|
|
|
- }
|
|
|
-}
|
|
|
+ //用户词典编辑窗口
|
|
|
+ echo "<div id='dict_user' >";
|
|
|
+ echo "<div><a href='word_statistics.php?word={$word}'>";
|
|
|
+ echo "<svg t='1596783175334' class='icon' style='font-size: xxx-large; fill: var(--link-hover-color); margin: 5px;' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='7755' width='200' height='200'><path d='M1019.904 450.56L536.576 557.056l417.792 208.896C999.424 692.224 1024 606.208 1024 512c0-20.48 0-40.96-4.096-61.44z m-12.288-61.44C958.464 184.32 786.432 28.672 573.44 4.096L446.464 512l561.152-122.88zM737.28 970.752c73.728-36.864 139.264-90.112 188.416-159.744L507.904 602.112l229.376 368.64zM512 0C229.376 0 0 229.376 0 512s229.376 512 512 512c61.44 0 118.784-12.288 172.032-28.672L385.024 512 512 0z' p-id='7756'></path></svg>";
|
|
|
+ echo "<span>{$_local->gui->click_to_chart}</span></a></div>";
|
|
|
+ echo $right_word_list;
|
|
|
+ echo "<div class='dict_word' ><b>{$_local->gui->undone_function}</b>";
|
|
|
+ echo "<div class='' onclick=\"dict_show_edit()\">{$_local->gui->edit}</div>";
|
|
|
+ echo "<div class='pali'>{$word}</div>";
|
|
|
|
|
|
-#词典列表
|
|
|
-echo "<div id='dictlist'>";
|
|
|
-foreach ($dict_list_a as $x_value) {
|
|
|
- if (substr($x_value[0], 0, 4) == "word") {
|
|
|
- echo "<div style='font-size:120%;font-weight:700;margin-top:15px;'>";
|
|
|
- echo "<a href='#{$x_value[0]}'>$x_value[1]</a></div>";
|
|
|
- } else {
|
|
|
- echo "<div><a href='#{$x_value[0]}'>$x_value[1]</a></div>";
|
|
|
- }
|
|
|
-}
|
|
|
-echo "<div>";
|
|
|
+ if ($iFetch > 0) {
|
|
|
+ echo "<div id='user_word_edit' style='display:none'>";
|
|
|
+ } else {
|
|
|
+ echo "<div id='user_word_edit'>";
|
|
|
+ }
|
|
|
+ echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->wordtype}</legend>";
|
|
|
+ echo "<select id=\"id_type\" name=\"type\" >";
|
|
|
+ foreach ($_local->type_str as $type) {
|
|
|
+ echo "<option value=\"{$type->id}\" >{$type->value}</option>";
|
|
|
+ }
|
|
|
+ echo "</select>";
|
|
|
+ echo "</fieldset>";
|
|
|
+ echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->gramma}</legend><input type='input' value=''/></fieldset>";
|
|
|
+ echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->parent}</legend><input type='input' value=''/></fieldset>";
|
|
|
+ echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->g_mean}</legend><input type='input' value=''/></fieldset>";
|
|
|
+ echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->note}</legend><textarea></textarea></fieldset>";
|
|
|
+ echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->factor}</legend><input type='input' value=''/></fieldset>";
|
|
|
+ echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->f_mean}</legend><input type='input' value=''/></fieldset>";
|
|
|
+ echo "<div class=''><button>{$_local->gui->add_to} {$_local->gui->my_dictionary}</button></div>";
|
|
|
+ echo "</div>";
|
|
|
+ echo "</div>";
|
|
|
+ echo "</div>";
|
|
|
+ //查用户词典结束
|
|
|
|
|
|
-#在巴利文献中出现的次数
|
|
|
-$arrWords = countWordInPali($word, true);
|
|
|
-$weight = 0;
|
|
|
-foreach ($arrWords as $oneword) {
|
|
|
- $weight += $oneword["count"] * $oneword["len"];
|
|
|
-}
|
|
|
-//echo "<div>{$_local->gui->word_weight}:$weight {$_local->gui->characters}</div>";
|
|
|
-//echo "<div>{$_local->gui->real_declension}:".count($arrWords)." {$_local->gui->forms}</div>";
|
|
|
-$right_word_list .= "<div>{$_local->gui->word_weight}:$weight {$_local->gui->characters}</div>";
|
|
|
-$right_word_list .= "<div>{$_local->gui->real_declension}:" . count($arrWords) . " {$_local->gui->forms}</div>";
|
|
|
-foreach ($arrWords as $oneword) {
|
|
|
- if ($oneword["bold"] > 0) {
|
|
|
- //echo "<div><b>{$oneword["word"]}</b> {$oneword["count"]} {$_local->gui->times}</div>";
|
|
|
- $right_word_list .= "<div><b>{$oneword["word"]}</b> {$oneword["count"]} {$_local->gui->times}</div>";
|
|
|
- } else {
|
|
|
- //echo "<div>{$oneword["word"]} {$oneword["count"]}{$_local->gui->times}</div>";
|
|
|
- $right_word_list .= "<div>{$oneword["word"]} {$oneword["count"]}{$_local->gui->times}</div>";
|
|
|
- }
|
|
|
-}
|
|
|
-echo "</div>";
|
|
|
-echo "</div>";
|
|
|
-echo "</div>";
|
|
|
-//参考字典查询结束
|
|
|
|
|
|
-//用户词典编辑窗口
|
|
|
-echo "<div id='dict_user' >";
|
|
|
-echo "<div><a href='word_statistics.php?word={$word}'>";
|
|
|
-echo "<svg t='1596783175334' class='icon' style='font-size: xxx-large; fill: var(--link-hover-color); margin: 5px;' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='7755' width='200' height='200'><path d='M1019.904 450.56L536.576 557.056l417.792 208.896C999.424 692.224 1024 606.208 1024 512c0-20.48 0-40.96-4.096-61.44z m-12.288-61.44C958.464 184.32 786.432 28.672 573.44 4.096L446.464 512l561.152-122.88zM737.28 970.752c73.728-36.864 139.264-90.112 188.416-159.744L507.904 602.112l229.376 368.64zM512 0C229.376 0 0 229.376 0 512s229.376 512 512 512c61.44 0 118.784-12.288 172.032-28.672L385.024 512 512 0z' p-id='7756'></path></svg>";
|
|
|
-echo "<br>{$_local->gui->click_to_chart}</a></div>";
|
|
|
-echo $right_word_list;
|
|
|
-echo "<div class='dict_word' ><b>{$_local->gui->undone_function}</b>";
|
|
|
-echo "<div class='' onclick=\"dict_show_edit()\">{$_local->gui->edit}</div>";
|
|
|
-echo "<div class='pali'>{$word}</div>";
|
|
|
|
|
|
-if ($iFetch > 0) {
|
|
|
- echo "<div id='user_word_edit' style='display:none'>";
|
|
|
-} else {
|
|
|
- echo "<div id='user_word_edit'>";
|
|
|
-}
|
|
|
-echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->wordtype}</legend>";
|
|
|
-echo "<select id=\"id_type\" name=\"type\" >";
|
|
|
-foreach ($_local->type_str as $type) {
|
|
|
- echo "<option value=\"{$type->id}\" >{$type->value}</option>";
|
|
|
-}
|
|
|
-echo "</select>";
|
|
|
-echo "</fieldset>";
|
|
|
-echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->gramma}</legend><input type='input' value=''/></fieldset>";
|
|
|
-echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->parent}</legend><input type='input' value=''/></fieldset>";
|
|
|
-echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->g_mean}</legend><input type='input' value=''/></fieldset>";
|
|
|
-echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->note}</legend><textarea></textarea></fieldset>";
|
|
|
-echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->factor}</legend><input type='input' value=''/></fieldset>";
|
|
|
-echo "<fieldset class='broder-1 broder-r'><legend>{$_local->gui->f_mean}</legend><input type='input' value=''/></fieldset>";
|
|
|
-echo "<div class=''><button>{$_local->gui->add_to} {$_local->gui->my_dictionary}</button></div>";
|
|
|
-echo "</div>";
|
|
|
-echo "</div>";
|
|
|
-echo "</div>";
|
|
|
-//查用户词典结束
|