मैं एक प्राथमिक कुंजी मैं बनाने रहा हूँ पर टक्कर के खिलाफ परीक्षण करने के लिए निम्नलिखित सरल कोड है के लिए खोज करने के लिए सरणी Fatest रास्ता:PHP in_array() भयानक प्रदर्शन। मूल्य
$machine_ids = array();
for($i = 0; $i < 100000; $i++) {
//Generate machine id returns a 15 character alphanumeric string
$mid = Functions::generate_machine_id();
if(in_array($mid, $machine_ids)) {
die("Collision!");
} else {
$machine_ids[] = $mid;
}
}
die("Success!");
किसी भी विचार क्यों इस चलाने के लिए कई मिनट ले जा रहा है? वैसे भी इसे तेज करने के लिए?
आप प्रोफाइल है कि 'in_array' है है होना चाहिए करने के लिए अपने कोड refactor अपराधी और नहीं 'कार्य :: gener_machine_id() '? – deceze
आपके पास 'Functions :: gener_machine_id' के लिए कोड है? – cHao