حالت بهینه چاپ String همراه با Array

پرسیده شده
فعالیت 966 روز پیش
دیده شده 350 بار
0

سلام. کدوم یک از کد های زیر بهینه تره؟ وقتی می خوایم مقدار یه Array رو با یک String چاپ کنیم. Concatenation بهتره یا با {} داخل Double Quote

$str = array('alex', 'pedro');
echo "User Name: {$str[0]}";
$str = array('alex', 'pedro');
echo 'User Name: ' . $str[0];
فایل پیوست

قاسمی
قاسمی

16 شهریور 00

1
حذف شده

سلام.

در کل بین دابل کوت و سینگل کوت از لحاظ سرعت، تفاوت خاصی وجود نداره که حتی در بعضی از بنچمارک ها کد ساده ی (متغیر مساوی یک سینگل کوت خالی) زمانش چند میکروثانیه بیشتر از دابل کوت شده است.

ولی در مجموع double quote و single quote خیلی نزدیک به هم هستن در بعضی مواقع در یک تست یکسان میتونه یکی از دیگری چند میکرو ثانیه بیشتر بشه. خواستید تست بگیرید، میتونید از تابع microtime استفاده کنید.(ابتدا و انتهای کد بذارید)

 

در مورد سرعت اینها در ورژن های مختلف، بخاطر مکانیسم انجین zend، نسخه ی های۷ به بالا و ۷ به پایین، نسخه های پایین ۷ یعنی ۵.۶ به قبل، سرعت پایینتری نسبت به نسخه های ۷ به بالا دارن بین نسخه های ۷ و ۷.۱ و ۷.۲ و ۷.۳ و ۷.۴ اختلاف خاصی دیده نمیشه ولی در نسخه ی ۸ نسبت به نسخه های قبلی سرعت تفسیر کدها بیشتر شده است.

فایل پیوست

محسن موحد

توسط

محسن موحد

18 شهریور 00

1
حذف شده

درود

کد پایینی، چون از تک کوتیشن استفاده میکنید. کامپایلر php دابل کوتیشن هارو کامل بررسی میکنه تا ببینه داخل کاراکتر خاصی وجود داره که اعمال کنه یا ن، مثلا همون متغیری که داخل دابل کوتیشن گذاشتید. اما برای تک کوتیشن اینجوری نیست و بررسی روش اعمال نمیشه

فایل پیوست

امیر صالحی

توسط

امیر صالحی

16 شهریور 00

حذف شده
ببخشید من منظورم رو درست نرسوندم. این مورد رو میدونم. منظورم اینه که از نظر سرعت اجرا و ساپورت در ورژن های متفاوت php هست.
قاسمی

16 شهریور 00

حذف شده
زیاد اهمیت نداره، توی ساختمان داده این خط کد big Oش به صوتر O(1) هستش و مشکلی از نظر سرعت و performance نداره
امیر صالحی

16 شهریور 00