نظرة عامة على PHP SDK
استخدم PHP SDK عندما يحتاج تطبيقك إلى بدء فحص أو استهلاك تقريره المنظّم أو الاستعلام عن فهارس التواقيع المضمّنة. تتألف الواجهة المدعومة من AMWScan\Scanner وطرق البحث للقراءة فقط في AMWScan\Signatures.
التثبيت والتحميل
ثبّت الحزمة باستخدام Composer ثم حمّل محمّل Composer التلقائي قبل استخدام SDK:
composer require marcocesarato/amwscan
require __DIR__ . '/vendor/autoload.php';
use AMWScan\Scanner;
تتطلب الحزمة PHP 7.4 أو أحدث مع امتدادات fileinfo وjson وmbstring وzlib. راجع المتطلبات للاطلاع على البيئات المدعومة.
اختيار نقطة دخول
| الحاجة | الواجهة | النتيجة |
|---|---|---|
| فحص ملفات أو مشروع | Scanner::run() | تقرير فحص stdClass أو false عند حدوث خطأ فحص تم التقاطه |
| قراءة نتيجة فحص بعد اكتماله | Scanner::getReport() | تقرير الفحص الحالي من stdClass |
| التحقق من تجزئة SHA-256 دقيقة لبرمجية خبيثة | Signatures::findKnownMalwareHash() | سجل مطابقة أو null |
| التحقق من تجزئة ملف قديمة موحّدة | Signatures::matchesLegacyCoreFile() | bool |
| سرد مؤشرات النطاقات المشبوهة المضمّنة | Signatures::getDomainIndicators() | مصفوفة من سجلات المؤشرات |
اقرأ الفحص باستخدام Scanner قبل دمج تنفيذ الفحص. واقرأ التقارير والنتائج قبل حفظ النتائج أو إرسال التنبيهات بشأنها.
الحد الأدنى لفحص غير مراقب
use AMWScan\Scanner;
$scanner = new Scanner();
$report = $scanner
->enableLiteMode()
->setSilentMode()
->setAutoSkip()
->run([__DIR__ . '/project']);
if ($report === false) {
throw new RuntimeException($scanner->getLastError() ?: 'Scan failed.');
}
printf("Scanned: %d; findings: %d\n", $report->scanned, $report->detected);
تضبط setSilentMode() التشغيل غير التفاعلي وتختار التخطي كإجراء افتراضي ما لم تضبط مطالبة أخرى. لا تجعل الفحص للقراءة فقط بمفردها. أبق المعالجة التلقائية معطلة إلى أن تراجع تقارير ممثلة.
استقرار الواجهة
يمثل Scanner وطرق البحث الموثقة في هذا القسم سطح الدمج المدعوم. تدعم الأصناف ضمن Archive وCheckpoint وConsole وFindings وIntegrity وModules وRemote وReputation الأجزاء الداخلية للفاحص. لا تربط تطبيقا بها أو بالخصائص الساكنة العامة مثل Scanner::$settings وSignatures::$raw.
يحتفظ الفاحص بالإعدادات والتقارير في حالة ساكنة. يجب أن تنفذ عملية PHP واحدة فحصا واحدا في كل مرة. استخدم عملية منفصلة للمهام المتزامنة أو الفحوصات الموضوعة في طابور أو العزل بين المستأجرين. اقرأ السلامة والحالة قبل تشغيل SDK في عامل أو عملية ويب طويلة العمر.
خريطة المراجع
| المرجع | المحتويات |
|---|---|
| الفحص باستخدام Scanner | المُنشئ ودورة الحياة والخيارات والمرشحات والمخرجات وعناصر التحكم في المعالجة |
| التقارير والنتائج | مخطط التقرير وحالة التغطية والنتائج والتشخيصات ومعالجة الإخفاقات |
| البحث عن التواقيع | عقود البحث عن التجزئات والنطاقات |
| السلامة والحالة | مدة الحالة والإجراءات المدمرة وسلوك الشبكة وإرشادات النشر |