باعتبارها اللغة الرئيسية لتطوير برامج الويب، يتم استخدام لغة PHP على نطاق واسع. كبرنامج إحصائي، يتمتع R بقدرة تشغيل جيدة في تنفيذ الخوارزميات الرياضية. في الآونة الأخيرة، نظرًا لاحتياجات العمل، لا بد لي من إجراء حسابات رياضية معقدة على بعض بيانات تطبيقات الويب. ومع ذلك، على الرغم من أن PHP نفسها يمكنها كتابة بعض الخوارزميات الرياضية، إلا أنه لا يزال من الصعب تلبية الطلب بكفاءة عشرات الأسطر من التعليمات البرمجية يمكن مقارنتها بوظيفة في R. وبعد البحث، أصبح من الممكن أخيرًا استدعاء R لإجراء عمليات الحساب في الوصول الفوري إلى PHP، وقراءة نتائج الحساب مباشرة وعرضها على صفحة الويب. الفكرة العامة هي كما يلي:

النقطة الأساسية هي أن php ينشط برنامج R للتشغيل، ويمرر معلمات الحساب إلى R، ويحصل على النتائج.

لتنشيط R في php، يمكنك استخدام الوظيفة المضمنة exec، بحيث يمكن تنفيذ أي أمر يتم تنفيذه في نافذة نظام التشغيل هنا. الأمر الذي يتم تنفيذه بواسطة R هو (يشير ما يلي إلى بيئة windows).

"D:\\Program Files\R\R-2.15.2\bin\x64\R.exe" --vanilla < D:\\test.R  out.txt

الجزء الأول هو مسار برنامج R المحلي، يليه خيار برنامج R الذي يمكن تخصيصه، يليه ملف برنامج R المراد تنفيذه، وهي النقطة الأساسية، وأخيرًا يتم تنفيذ ملف الإخراج. هذا الملف مطلوب للأمر، لكنه لا فائدة منه.

من أجل تحقيق كل زيارة إلى صفحة php، يتم تنفيذ برامج R مختلفة بسبب معلمات مختلفة، لذلك يجب إنشاء اسم ملف البرنامج test.R لكل زيارة للتأكد من وجود ملف برنامج R فريد لكل منها. زيارة استخدم نموذج كتابة ملف نصي لتخزين أسماء المعلمات وقيم المعلمات، وتحديد اسم الملف الناتج، وتحديد تنشيط ملف R في صفحة php، وفي هذا الملف يمكنك تحديد ملف برنامج R الذي يستدعي اسم ملف ثابت ومعقد. بعد التشغيل، يتم إنشاء ملف نصي فريد من نوعه، ثم يقرأ ملف php نتيجة الملف النصي ويعالجها ويعرضها، أي يتم تحقيق الغرض.

exec($command,$out1,$out2);

في نتيجة إخراج PHP، طالما أن قيمة $out2 هي 0، يكون التنفيذ ناجحًا.

تجدر الإشارة إلى أن الشرطة المائلة العكسية المستخدمة في مسار الملف هي رمز هروب خاص للشرطة المائلة العكسية في PHP. عند إنشاء الأمر $، يجب عليك الانتباه بشكل خاص إلى ما إذا كانت سلسلة الإخراج تلبي المتطلبات. بالإضافة إلى ذلك، لتخزين الملفات، حاول استخدام المسارات المطلقة.


اترك رد