मैं date_compare() को शुरू करने के लिए एक फ़ंक्शन बनाने का प्रयास कर रहा हूं जो एक विशिष्ट सरणी और कुंजी के लिए usort
फ़ंक्शन है।एक आंतरिक समारोह में फ़ंक्शन फ़ंक्शन पास करना?
function init_date_compare($key, $array) {
$key2 = $key;
function date_compare($a, $b) {
global $key2;
$t1 = strtotime($a[$key2]); $t2 = strtotime($b[$key2]);
return $t2 - $t1;
}
usort($array, "date_compare");
}
$arr = array(array("Aug-2-2012"), array("June-2-2012"));
$arr = init_date_compare(0, $arr);
print_r($arr);
यह आउटपुट:
Notice: Undefined index: in...
(तो मूल रूप से अशक्त, scoping काम नहीं किया)।
मुझे यकीन नहीं है कि कार्यों के अंदर कार्यों के साथ कैसे काम करना है, लेकिन अगर मुझे सही याद है, तो यह संभव है। मैंने कुछ global
एस में फेंकने की कोशिश की और $key2
शुरू किया लेकिन मैं इसे काम करने में असमर्थ हूं।
उपयोगी होगा। –