পিএইচপি 5.3 এ অবমূল্যায়িত ত্রুটিগুলি বন্ধ করুন


127

আমার সার্ভারটি পিএইচপি 5.3 চালাচ্ছে এবং আমার ওয়ার্ডপ্রেস ইনস্টলটি আমার উপর এই ত্রুটিগুলি ছড়িয়ে দিচ্ছে, যার ফলে আমার সেশন_স্টার্ট () ভেঙে যায়।

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

এটি বিরক্তিকর, তবে আমি পর্দার ত্রুটি প্রতিবেদন বন্ধ করতে চাই না। আমি কীভাবে এই বিরক্তিকর অবহেলিত সতর্কতাগুলি অক্ষম করব?

আমি ওয়ার্ডপ্রেস 2.9.2 চালাচ্ছি।


ওয়ার্ডপ্রেসের বর্তমান সংস্করণটি কি 3.3.1 নয়?
শাদুর

তিনি মনে হয় পুরানো ওয়ার্ডপ্রেস সহ একটি পুরাতন পিএইচপি পছন্দ করেছেন
কিচএমকিউস

উত্তর:


203

আপনি নিম্নলিখিত ফাংশনগুলি কল করে কোডটিতে এটি করতে পারেন।

error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);

অথবা

error_reporting(E_ALL ^ E_DEPRECATED);

আপনাকে ধন্যবাদ রবাস, এটি কি কোনও পিএইচপি ত্রুটি প্রতিবেদনের পাশাপাশি হত্যা করবে?
atwellpub

6
নাপ, প্রথমটি পিএইচপি কে মূলত ইআরআরআর / সতর্কতা / পার্স / নোটিশ ত্রুটি দেখাতে বলে, দ্বিতীয়টি পিএইচপি কে বলেছে তদন্ত ত্রুটি ব্যতীত সমস্ত প্রদর্শন করতে।
রবাস

1
উবুন্টুতে পিএইচপি 5.5.9 ব্যবহার করে "ত্রুটি_বন্দরে = ই_এলএল & ~ ই_ডিপ্রেসিটেড & _ ই_এসআরসিটি" "এর কোনও প্রভাব নেই .... তবে, আমার উদাহরণে," @mysql_connect (); " কৌতুকটি করুন :-(
মলোকোলোকো

@ মোলোোকলোকে আপনি এটি দুবার ভুল করেছেন। প্রথমে আপনি কোনও জিনিস ঠিক করেন নি। আপনি শুধু এটি নিস্তব্ধ। ২ য়, আপনি এখনও ব্যবহার করছেন mysqlযা হ্রাস করা হয়েছে। আপনার অন্ততপক্ষে স্যুইচ করা উচিতmysqli
মার্সিন ওরোলোস্কি

কাজ করে না। এটি কোথাও ওভাররাইট করা আছে? তুমি কোথায় রেখেছ?
অ্যালেক্স


21

অ্যাপ্লিকেশনটি কাজ বন্ধ করার কারণ হিসাবে কেবল সেই ত্রুটিগুলি পেতে, ব্যবহার করুন:

error_reporting(E_ALL ^ (E_NOTICE | E_WARNING | E_DEPRECATED));

এটি নোটিশ, সতর্কতা এবং অবচিত ত্রুটিগুলি দেখানো বন্ধ করবে।


13

পূর্ববর্তী সমস্ত উত্তর সঠিক। যেহেতু পিএইচপি-তে সমস্ত ত্রুটি কীভাবে বন্ধ করা যায় সে সম্পর্কে কেউই ইঙ্গিত দেয়নি, তাই আমি এখানে এটি উল্লেখ করতে চাই:

error_reporting(0); // Turn off warning, deprecated,
                    // notice everything except error

কারও কাছে এটি দরকারী মনে হতে পারে ...


11

আমি কেবল একই ধরণের সমস্যার মুখোমুখি হয়েছি যেখানে একটি এসইও প্লাগইন আমার ব্লগ ডিস্ক ব্যবহারের পরিকল্পনার সীমা অতিক্রম করে বিপুল সংখ্যক সতর্কতা জারি করেছে।

আমি জানতে পেরেছি যে আপনি ডাব্লুপি - কনফিগারেশন.পিএফ ফাইলের মধ্যে ডাব্লুপি - সেটিংস.এফপি প্রয়োজনীয়তার পরে ত্রুটি_সামগ্রী কমান্ডটি অবশ্যই অন্তর্ভুক্ত করবেন :

   require_once( ABSPATH .'wp-settings.php' );
   error_reporting( E_ALL ^ ( E_NOTICE | E_WARNING | E_DEPRECATED ) );

এটি করার পরে আর কোনও সতর্কতা, বিজ্ঞপ্তি বা অবহিত রেখাগুলি আপনার ত্রুটি লগ ফাইলে সংযুক্ত হবে!

ওয়ার্ডপ্রেস ৩.৮ এ পরীক্ষিত তবে আমার ধারণা এটি প্রতিটি ইনস্টলেশনের জন্য কাজ করে।


9

Wp-config.php ফাইলটিতে আপনি ধ্রুবক WP_DEBUG খুঁজে পেতে পারেন। এটি মিথ্যাতে সেট করা আছে তা নিশ্চিত করুন।

define('WP_DEBUG', false);

এটি ওয়ার্ডপ্রেস 3.x এর জন্য is


7

আপনাকে পিএইচপি কনফিগারেশন ফাইলটি সম্পাদনা করতে হবে। লাইনটি সন্ধান করুন

error_reporting = E_ALL

এবং এর সাথে প্রতিস্থাপন করুন:

error_reporting = E_ALL ^ E_DEPRECATED

কনফিগারেশন ফাইলটিতে আপনার অ্যাক্সেস না থাকলে আপনি এই লাইনটি পিএইচপি ওয়ার্ডপ্রেস ফাইলটিতে যুক্ত করতে পারেন (সম্ভবত শিরোনাম.এফপি):

error_reporting(E_ALL ^ E_DEPRECATED);

এটি যুক্ত করা আরও ভাল wp-config.php। এটি কনফিগারেশন সেটিংস সহ সম্পাদনা করার উদ্দেশ্যে।
নীলপো

4

আমি এই পদ্ধতি ব্যবহার করার ঝোঁক

$errorlevel=error_reporting();
$errorlevel=error_reporting($errorlevel & ~E_DEPRECATED);

এইভাবে আমি আমার প্রয়োজন মতো দুর্ঘটনাক্রমে কিছু বন্ধ করি না


1
এটি আপনাকে নিয়ন্ত্রণ কম দেয়। আপনি ধরে নিচ্ছেন যে বর্তমানে যা কিছু কনফিগার করা হয়েছে তা সঠিক। এটি প্রয়োজন হিসাবে সরাসরি সেট করা আরও ভাল যাতে আপনি ওভারল্যাপিং কনফিগারেশনগুলি না পান।
নীলপো

বোঝা. প্রতিটি ক্ষেত্রে আলাদা।
রিয়েলটিবো

1
এটি তবুও সেরা উত্তর। এটিই কেবলমাত্র প্রশ্নের উত্তর দেয়: কোনও পার্শ্ব প্রতিক্রিয়া ছাড়াই কেবল E_DEPRECATED অক্ষম করে।
সিগমোরাল

-2

আপনি যখন আপনার পিএইচপি সংস্করণ পরিবর্তন করেন তখন এই ত্রুটি ঘটে: এই ত্রুটি বার্তাকে দমন করা খুব সহজ

অবহেলিত ত্রুটি বার্তাটি দমন করতে, কেবল আপনার ইনডেক্স.এফপি ফাইলে কোডের নীচে যুক্ত করুন:

init_set ( 'display_errors', মিথ্যা);


এটি করবেন না, যা কেবল সমস্ত হ্রাসের জন্য নয়, সমস্ত ত্রুটি বার্তাগুলি গোপন করে।
তানয়দিন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.