কনসোল প্যারামিটারের সাথে পিএইচপি ত্রুটি_বর্ধনার মান সেট করা হচ্ছে


11

আমার পিএইচপি প্রকল্পগুলি ত্রুটিগুলিতে পরীক্ষা করার জন্য আমি সাধারণত এই আদেশটি ব্যবহার করি:

find ./ -type f -name \*.php -exec php -l '{}' \; | grep -v "No syntax errors detected"

আমি php -l '{}' \;কিছু পরামিতিগুলির সাথে অংশটি প্রসারিত করতে চাই যাতে এটি কাস্টম ত্রুটি_বর্ধনা স্তরটি ব্যবহার করবে এবং php.ini এ সংজ্ঞায়িত না করে। এটা কি সম্ভব?

(আমি জানি যে প্রশ্নটি কিছুটা কোডিং সম্পর্কিত) অন্যদিকে এটি শেল কমান্ড সম্পর্কে আরও বেশি।


আপনার মানে কি error_reportingস্তর? আপনি php.iniনিজেরাই পিএইচপি ফাইলগুলিতে মান বা কাস্টম কেন ব্যবহার করতে চান না ।
কোয়ান্টা

@ কোয়ান্টা: হ্যাঁ, আমি ত্রুটি_বন্দরের কথা বলছি। দুঃখিত, এটি যথেষ্ট পরিষ্কার ছিল না। আমি এখন প্রশ্ন পরিবর্তন। আমি php.ini এ পরিবর্তন করতে চাই না কারণ আমি কখনও কখনও লাইভ সার্ভারেও এই কমান্ড চেইনটি ব্যবহার করি। এবং ফাইলগুলিতে সেগুলি সেটিং করা কোনও বিকল্প নয় কারণ আমাকে এটি প্রতিটি ফাইলে সেট করতে হবে কারণ ফাইন্ড কমান্ড প্রতিটি ফাইল পৃথকভাবে কার্যকর করে। এবং আমার মাঝে মাঝে এমন প্রকল্প রয়েছে যেখানে আমরা বাহ্যিক গ্রন্থাগারগুলি ব্যবহার করি এবং আমি সেগুলি একই সাথে পরীক্ষা করতে চাই।
রাফেল লুথিজার

উত্তর:


15

অনুসারে php -h

-d foo[=bar]     Define INI entry foo with value 'bar'

আপনি যদি প্রস্তাবিত উত্পাদন ডিফল্ট ( E_ALL & ~E_DEPRECATED) চান তবে মানটি 22527পিএইচপি 5.3 এবং 24575পিএইচপি 5.4+ এ থাকবে।

php -l -d error_reporting=22527

বিভিন্ন সংমিশ্রনের জন্য মান সন্ধান করা সহজ।

php -r 'echo E_ALL & ~E_NOTICE | E_STRICT;' # should return 32759
php -r 'echo E_ALL & ~E_DEPRECATED;' # should return 22527 in PHP 5.3, 24575 in PHP 5.4+

1
জঘন্য ... আমি "পিএইচপি-এইচ" প্রায় 10 বার পড়ছিলাম তবে কোনওভাবে আমার মন সবসময় এই লাইনটির উপরে ঝাঁপিয়ে পড়েছিল ... হ্যাঁ, এটিই আমি অনুসন্ধান করছিলাম। আমার ক্ষেত্রে আমি ব্যবহার করতে চাই: E_ALL | E_STRICT যা 32767. হয়
Raffael Luthiger

যেহেতু পিএইচপি 5.4, E_STRICTএর একটি অংশ E_ALL। এবং E_ALLএকটি সহজ শর্টকাট মান আছে -1। সুতরাং php -d error_reporting=-1সমস্ত রিপোর্টিং সক্ষম করতে একজন করতে পারেন ।
মার্টিন প্রিক্রিল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.