قم بإيقاف تشغيل الأخطاء المنخفضة PHP 5.3
-
25-09-2019 - |
سؤال
يعمل الخادم الخاص بي بتشغيل PHP 5.3 وتثبيت WordPress الخاص بي يبصق هذه الأخطاء عليّ تسبب في كسر Session_Start ().
Deprecated: Assigning the return value of new by reference is deprecated in /home//public_html/hub/wp-settings.php on line 647
Deprecated: Assigning the return value of new by reference is deprecated in /home//public_html/hub/wp-settings.php on line 662
Deprecated: Assigning the return value of new by reference is deprecated in /home//public_html/hub/wp-settings.php on line 669
Deprecated: Assigning the return value of new by reference is deprecated in /home//public_html/hub/wp-settings.php on line 676
Deprecated: Assigning the return value of new by reference is deprecated in /home//public_html/hub/wp-settings.php on line 712
هذا أمر مزعج ، لكنني لا أريد إيقاف تشغيل الإبلاغ عن خطأ الشاشة. كيف يمكنني تعطيل هذه التحذيرات المزعجة المزعجة؟
أنا أقوم بتشغيل WordPress 2.9.2.
المحلول
يمكنك القيام بذلك في التعليمات البرمجية عن طريق استدعاء الوظائف التالية.
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
أو
error_reporting(E_ALL ^ E_DEPRECATED);
نصائح أخرى
كنت بحاجة لتكييف هذا
error_reporting = E_ALL & ~E_DEPRECATED
للحصول على أخطاء فقط تلك التي تسبب التطبيق لوقف استخدام العمل:
error_reporting(E_ALL ^ (E_NOTICE | E_WARNING | E_DEPRECATED));
سيتوقف هذا عن إظهار الأخطاء والتحذير والنقاب.
جميع الإجابات أعلاه صحيحة. بما أنه لم يلمح أحد كيفية إيقاف جميع الأخطاء في PHP ، أود أن أذكرها هنا:
error_reporting(0); // Turn off warning, deprecated,
// notice everything except error
شخص ما قد يجدها مفيدة ......
لقد واجهت مشكلة مماثلة حيث أصدر مكون إضافي SEO عددًا كبيرًا من التحذيرات التي تجعل استخدام قرص مدونتي يتجاوز حد الخطة.
اكتشفت أنك يجب قم بتضمين الأمر error_reporting بعد يتطلب wp-settings.php في ملف wp-config.php:
require_once( ABSPATH .'wp-settings.php' );
error_reporting( E_ALL ^ ( E_NOTICE | E_WARNING | E_DEPRECATED ) );
من خلال القيام بذلك ، لا يوجد تحذيرات ، يتم إلحاق الإشعارات أو الخطوط المنهكة لملف سجل الخطأ الخاص بك!
تم اختباره على WordPress 3.8 ولكن أعتقد أنه يعمل في كل تثبيت.
في ملف wp-config.php ، يمكنك العثور على WP_Debug ثابت ، تأكد من ضبطه على خطأ.
define('WP_DEBUG', false);
هذا هو لورد 3.x
يجب عليك تحرير ملف تكوين PHP. زعنفة الخط
error_reporting = E_ALL
واستبدالها error_reporting = E_ALL ^ E_DEPRECATED
إذا لم يكن لديك إمكانية الوصول إلى ملف التكوين ، يمكنك إضافة هذا السطر إلى ملف PHP WordPress (ربما headers.php)
error_reporting(E_ALL ^ E_DEPRECATED);
أميل إلى استخدام هذه الطريقة
$errorlevel=error_reporting();
$errorlevel=error_reporting($errorlevel & ~E_DEPRECATED);
وبهذه الطريقة لا أطفئ عن طريق الخطأ شيء أحتاجه
يحدث هذا الخطأ عند تغيير إصدار PHP الخاص بك: من السهل جدًا قمع رسالة الخطأ هذه
لقمع رسالة الخطأ التي تم إهمالها ، ما عليك سوى إضافة رمز أدناه إلى ملف index.php الخاص بك:
init_set ('display_errors' ، false) ؛