/* Ordoneaza un intreg Array multi-dimensional - $arr = array-ul multi-dimensional - $k = un sir cu numele de index /cheie din array-ul copil, dupa care se face ordonarea - $sort = una din aceste optiuni de sortare: SORT_ASC - ordoneaza crescator. SORT_DESC - ordoneaza descrescator. SORT_REGULAR - compara elementele normal (nu schimba tipul) SORT_NUMERIC - compara elementele numeric SORT_STRING - compara ca tip sir (string) SORT_LOCALE_STRING - compara ca tip sir bazat pe current-locale, care poate fi modificat cu setlocale() SORT_NATURAL - compara elementele ca tip sir, folosind "ordinea normala" precum natsort() */ function sortMultiArray($arr, $k, $sort) { $tmp = Array(); foreach($arr as &$ma) $tmp[] = &$ma[$k]; $tmp = array_map('strtolower', $tmp); // pt case-insensitive array_multisort($tmp, $sort, $arr); return $arr; }- Examplu utilizare. Ordooneaza acest array, dupa "nr", descrescator; si dupa "fruit".
$arr = array( 'alex'=>array('nr'=>3, 'fruit'=>'orange'), 'mars'=>array('nr'=>8, 'fruit'=>'Banana'), 'victor'=>array('nr'=>4, 'fruit'=>'apple'), );Cod php:
<?php // https://marplo.net/php-mysql/ /* Ordoneaza un intreg Array multi-dimensional - $arr = array-ul multi-dimensional - $k = un sir cu numele de index /cheie din array-ul copil, dupa care se face ordonarea - $sort = una din aceste optiuni de sortare: SORT_ASC - ordoneaza crescator. SORT_DESC - ordoneaza descrescator. SORT_REGULAR - compara elementele normal (nu schimba tipul) SORT_NUMERIC - compara elementele numeric SORT_STRING - compara ca tip sir (string) SORT_LOCALE_STRING - compara ca tip sir bazat pe current-locale, care poate fi modificat cu setlocale() SORT_NATURAL - compara elementele ca tip sir, folosind "ordinea normala" precum natsort() */ function sortMultiArray($arr, $k, $sort) { $tmp = Array(); foreach($arr as &$ma) $tmp[] = &$ma[$k]; $tmp = array_map('strtolower', $tmp); // pt case-insensitive array_multisort($tmp, $sort, $arr); return $arr; } // array bi-dimensional $arr = array( 'alex'=>array('nr'=>3, 'fruit'=>'orange'), 'mars'=>array('nr'=>8, 'fruit'=>'Banana'), 'victor'=>array('nr'=>4, 'fruit'=>'apple'), ); // ordoneaza array-ul dupa 'nr', descrescator $arr1 = sortMultiArray($arr, 'nr', SORT_DESC); // sorteaza dupa 'fruit' $arr2 = sortMultiArray($arr, 'fruit', SORT_STRING); // Test echo '<pre>Dupa "nr":<br/>'; var_export($arr1); echo '<br/><br/>Dupa "fruit":<br/>'; var_export($arr2); echo '</pre>';Rezultat:
Dupa "nr": array ( 'mars' => array ( 'nr' => 8, 'fruit' => 'Banana' ), 'victor' => array ( 'nr' => 4, 'fruit' => 'apple' ), 'alex' => array ( 'nr' => 3, 'fruit' => 'orange' ) ) Dupa "fruit": array ( 'victor' => array ( 'nr' => 4, 'fruit' => 'apple' ), 'mars' => array ( 'nr' => 8, 'fruit' => 'Banana' ), 'alex' => array ( 'nr' => 3, 'fruit' => 'orange' ) )
Functia sortMultiArray() efectueaza o sortare case-insensitive (fara diferenta intre litere mici si mari). Pentru a efectua o sortare case-sensitive (sirurile cu litera mare sa apara in fata celor cu litera mica) stergeti (sau schimbati in comentariu, cu "//") aceasta linie de cod din functie.
$tmp = array_map('strtolower', $tmp); // pt case-insensitive
<ul> <li>http://coursesweb.net/html/</li> <li>http://www.marplo.net/html/</li> </ul>
.some_class { display: list-item; }
var obj = { "courses": ["php", "javascript", "ajax"] }; var jsonstr = JSON.stringify(obj); alert(jsonstr); // {"courses":["php","javascript","ajax"]}
$strhtml = '<body><div id="dv1">CoursesWeb.net</div></body>'; $dochtml = new DOMDocument(); $dochtml->loadHTML($strhtml); $elm = $dochtml->getElementById("dv1"); echo $elm->nodeValue; // CoursesWeb.net
I`m living here. - Traiesc /Locuiesc aici.
Estoy viviendo aquĆ. - Traiesc /Locuiesc aici.