बुला मैं एक बहुत ही कम उदाहरण है जहाँ प्रतिस्थापन करने के लिए कुछ न कुछ है बनाया का पालन करें:
$value = '1_2__3___4____5_____6______1-2--3---4----5-----6------';
$s_1 = microtime(true);
for ($i = 0; $i < 1000000; ++$i) {
$r_1 = preg_replace(array('/_{2,}/', '/-{2,}/'), array('_', '-'), $value);
}
$e_1 = microtime(true);
$s_2 = microtime(true);
for ($i = 0; $i < 1000000; ++$i) {
$r_2 = preg_replace('/_{2,}/', '_', $value);
$r_2 = preg_replace('/-{2,}/', '-', $r_2);
}
$e_2 = microtime(true);
print $r_1;
print $r_2;
print $e_1 - $s_1;
print $e_2 - $s_2;
इस परिणाम के साथ:
3,69554805756
3,2879319191
जैसा कि एक महत्वपूर्ण अंतर नहीं है - वास्तव में कोई फर्क नहीं पड़ता - जैसा कि हम बात कर रहे हैं 'एक लाख कॉल बुलाओ। यह भी दिलचस्प है कि दूसरा संस्करण "थोड़ा" तेज़ है। मुझे लगता है कि ऐसा इसलिए है क्योंकि उन सरणी के माध्यम से बनाना और चलाना।
दो शब्द: यह प्रोफ़ाइल। – deceze
'$ start = microtime (true); // तुम्हारा कोड; गूंज microtime (सच) - $ शुरू; '। कई बार दोहराएं और परिणाम देखें। – Leri
मैं इस पर हूं। मुझे एक मिनट दो। :) – insertusernamehere