davechild / textstatistics
PHP 包,用于根据各种算法测量文本的可读性。
1.0.3
2018-08-21 08:17 UTC
Requires
- php: >=7.2.0
Requires (Dev)
- phpunit/phpunit: ^7
Suggests
- ext-bcmath: More accurate floating point calculations.
- ext-mbstring: Handle multi-byte text properly.
This package is auto-updated.
Last update: 2024-08-30 01:20:03 UTC
README
PHP 文本统计类可以帮助您识别网站内容的缺陷,尤其是可读性方面的缺陷。
它允许您使用常见的评分系统来测量文本的可读性,包括
- Flesch-Kincaid 阅读易度
- Flesch-Kincaid 学年水平
- Gunning 雾评分
- Coleman-Liau 指数
- SMOG 指数
- 自动可读性指数
- Dale-Chall 可读性分数
- Spache 可读性分数
测量文本可读性的最大挑战之一是音节的计数,这可能是难以解决的。在统计类中有一些规则用于计算单词的音节数,并且有一个大型的单词列表来测试这些规则。
请随时添加测试单词列表,特别是如果您能找到音节数计算不正确的单词(尤其是如果您还能为此类添加代码以正确处理您的单词的话)!
同形异义词的计数将是不可能的,因为它们依赖于上下文(例如,“他骑着摩托车在房子周围转悠”,“她骑着摩托车去学校”),但是这样的单词并不多,不会造成问题。在资源文件夹中有这些词的不完整的列表。
安装
使用 Composer
{ "require": { "davechild/textstatistics": "1.*" } }
如果使用 PHP 版本 < 7.2,请指定版本 1.0.2。
测量可读性
use DaveChild\TextStatistics as TS; $textStatistics = new TS\TextStatistics; $text = 'The quick brown fox jumped over the lazy dog.'; echo 'Flesch-Kincaid Reading Ease: ' . $textStatistics->fleschKincaidReadingEase($text);
更多的文本恶作剧!
本包包含几个具有静态方法的类,可以独立调用。如果需要,您可以将文本编码作为第二个参数传递给这些方法。
单词复数化和单数化
echo DaveChild\TextStatistics\Pluralise::getPlural('banana'); // bananas echo DaveChild\TextStatistics\Pluralise::getSingular('bananas'); // banana
音节计数
echo DaveChild\TextStatistics\Syllables::syllableCount('banana'); // 3
字母、句子、单词计数
echo DaveChild\TextStatistics\Text::textLength('I ate a banana.'); // 15 echo DaveChild\TextStatistics\Text::letterCount('I ate a banana.'); // 11 echo DaveChild\TextStatistics\Text::wordCount('I ate a banana.'); // 4 echo DaveChild\TextStatistics\Text::sentenceCount('I ate a banana.'); // 1
有用的链接
主页和实时版本
JavaScript 端口
https://github.com/cgiffard/TextStatistics.js
许可证