Skip to content

Commit

Permalink
Reduce SarahSpell db from 79MB to 19MB
Browse files Browse the repository at this point in the history
  • Loading branch information
khaled-alshamaa committed Aug 11, 2024
1 parent e2f5e93 commit ee34731
Show file tree
Hide file tree
Showing 5 changed files with 9 additions and 3 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@
<!--
## What's new in ArPHP 7.0.0 _(release date: Sep 7, 2024)_
* Full integration with the open-source version of the Arabic Spell Checker (ASC https://arabicspellchecker.com/open-source.html).
* Add the new "arDialect" method for Arabic dialect identification (i.e., Egyptian, Levantine, Maghrebi, and Peninsular) of the text (e.g., comments, reviews, etc.).
[Top](#arphp-library---change-log)
Expand Down
2 changes: 0 additions & 2 deletions examples/ar_spell.php
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,6 @@
$text = "
والان وصلت الحوسبه الكمومية التي تعتمد على فيزياء الكم. نعم هي في المرحلة التجريبية ولكن إذا نجحت مشاريع كمبيوتراتها فستكون هذه الآلات قوية للغاية.
ولكن لو تركت بدون تنظيم وتم تطبيقها في حياتنا اليومية، فربما تكون خطرا آخرا يهدد حياتنا وكوكبنا.
";

$y = $Arabic->spellGetMisspelled($text);
Expand Down Expand Up @@ -104,7 +103,6 @@
$text = "
والان وصلت الحوسبه الكمومية التي تعتمد على فيزياء الكم. نعم هي في المرحلة التجريبية ولكن إذا نجحت مشاريع كمبيوتراتها فستكون هذه الآلات قوية للغاية.
ولكن لو تركت بدون تنظيم وتم تطبيقها في حياتنا اليومية، فربما تكون خطرا آخرا يهدد حياتنا وكوكبنا.
";
$misspelled = $Arabic->spellGetMisspelled($text);
Expand Down
8 changes: 7 additions & 1 deletion src/SarahSpell.php
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,14 @@ class Speller {
public function __construct(Array $options = [] ) {

$this->rootDirectory = dirname(__FILE__);

$tmpfile_path = sys_get_temp_dir().DIRECTORY_SEPARATOR.'sarahspell.db';
if (!file_exists($tmpfile_path)) {
copy('compress.bzip2://' . $this->rootDirectory.'/data/SarahSpell/sarahspell.db.bz2', $tmpfile_path);
}

try {
$this->conn = new \PDO('sqlite:'.$this->rootDirectory.'/data/SarahSpell/sarahspell-db.db',null,null,[\PDO::ATTR_PERSISTENT => true]);
$this->conn = new \PDO('sqlite:'.$tmpfile_path,null,null,[\PDO::ATTR_PERSISTENT => true]);
$this->conn->setAttribute(\PDO::ATTR_ERRMODE, \PDO::ERRMODE_EXCEPTION);
} catch(\PDOException $e) {
echo "Connection failed: " . $e->getMessage();
Expand Down
Binary file removed src/data/SarahSpell/sarahspell-db.db
Binary file not shown.
Binary file added src/data/SarahSpell/sarahspell.db.bz2
Binary file not shown.

0 comments on commit ee34731

Please sign in to comment.