redis_import_term.php 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. require_once __DIR__."/../config.php";
  3. require_once __DIR__."/../redis/function.php";
  4. $rediskey = "dict://term";
  5. if (PHP_SAPI == "cli") {
  6. $redis = redis_connect();
  7. if ($redis != false) {
  8. $dbh = new PDO(_FILE_DB_TERM_, _DB_USERNAME_, _DB_PASSWORD_, array(PDO::ATTR_PERSISTENT => true));
  9. $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
  10. $query = "SELECT word from "._TABLE_TERM_." where word !='' group by word";
  11. $stmtPali = $dbh->query($query);
  12. while ($word = $stmtPali->fetch(PDO::FETCH_ASSOC)) {
  13. # code...
  14. $query = "SELECT * from "._TABLE_TERM_." where word = ? ";
  15. $stmt = $dbh->prepare($query);
  16. $stmt->execute(array($word["word"]));
  17. if ($stmt) {
  18. $Fetch = $stmt->fetchAll(PDO::FETCH_ASSOC);
  19. $redisWord=array();
  20. foreach ($Fetch as $one) {
  21. # code...
  22. $redisWord[] = array($one["id"],
  23. $one["word"],
  24. "",
  25. "",
  26. "",
  27. $one["meaning"]."$".$one["other_meaning"],
  28. $one["note"],
  29. "",
  30. "",
  31. 1,
  32. 100,
  33. $one["owner"],
  34. "term",
  35. $one["language"]
  36. );
  37. }
  38. $redis->hSet($rediskey,$word["word"],json_encode($redisWord,JSON_UNESCAPED_UNICODE));
  39. }
  40. }
  41. fwrite(STDOUT, "all done ".$redis->hLen($rediskey).PHP_EOL);
  42. }else{
  43. fwrite(STDERR,"redis connect is fail".PHP_EOL);
  44. }
  45. }
  46. ?>