মূল প্রতিধ্বনির পরিবর্তে মুদ্রণ ব্যবহার করে কেন?


24

আমি কোথাও পড়েছি এবং আমার মনে নেই কোথায়, এটি echoতখন ডেটা আউটপুট দেওয়ার আরও কার্যকর উপায় print

কেন ড্রুপাল কোর printএত ব্যবহার করে ? এর পিছনে কোন বিশেষ কারণ আছে?


1
একটি পৃথক নোটে: মুদ্রণ সর্বদা 1 হিসাবে মান হিসাবে ফিরে আসবে, প্রতিধ্বনি কিছুই ফিরিয়ে দেবে না। আমি অনুমান করি যে এটি কিছু ক্ষেত্রে কার্যকর হতে পারে।
বার্ট

এটি কি ধরণের মামলা হতে পারে?
জয়য়ারজো

আমিও ভাবলাম! ভাল প্রশ্ন!
এড্রুউ

উত্তর:


25

echoএকাডেমিক পরিবেশে শুধুমাত্র দ্রুত। পার্থক্য খুব প্রান্তিক। একটি দ্রুত বেঞ্চমার্ক আমি সবেমাত্র করেছি: 2000 টিরও বেশি নোড সহ একটি সারণী থেকে এক সারি আনার সময়টি 1 ইউনিট।

1 ইউনিটের উন্নতি পেতে, আমাকে প্রায় 3.700.000 (3 মিলিয়ন এরও বেশি) printস্টেটমেন্টের সাথে প্রতিস্থাপন করতে হবে echo। অন্য কথায়, আপনি যদি পারফরম্যান্সের উন্নতি চান তবে এটি আর খুব কমই শুরু করার জায়গা।

দেখা যায় যে printএরপরে আরও বিস্তৃত ক্ষেত্রে ব্যবহার করা যেতে পারে echo, প্রথমটির কিছু সুবিধা রয়েছে। এটি আপনাকে তিনটি বিকল্প দেয়:

  • সর্বদা ব্যবহার print
  • echoযেখানে সম্ভব ব্যবহার করুন এবং ফ্যালব্যাক চালু করুনprint
  • ব্যবহার করুন echoসবসময় এবং যদি আপনার কোড refactor echoব্যবহার করা যাবে না, এটি ব্যবহার করার জন্য

দ্রুপাল প্রথমটিতে খেলাপি হয়েছে।

কেন এটি বেছে নেওয়া হয়েছিল তা সম্পর্কে আপনার প্রকৃত প্রশ্নের উত্তর দেওয়ার জন্য: এটি ছিল না। এটি কেবল এভাবেই বেড়েছে।


প্রতিধ্বনি কখন ব্যবহার করা যায় না তার উদাহরণ দিতে পারেন? এটা ঠিক আমি এই মুহূর্তে কোন কল্পনা করতে পারি না।
জয়য়ারজো

6
সর্বাধিক সুস্পষ্ট if (! print some_method() ) {print some_other_method()}। যেহেতু মুদ্রণ একটি সত্য ফেরত দেয় যদি এটি আসলে কিছু মুদ্রিত হয়। ইকো কিছুই ফিরিয়ে দেয় না, এ কারণেই এটি দ্রুত হয়। আর একটি উদাহরণ আপনি দেখতে পাবেন হ'ল return print $somevalueস্থিতি ফিরিয়ে আনার একটি পদ্ধতির শেষে।
বার্কগুলি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.