J'ai besoin d'intimité. Non pas parce que mes actions sont douteuses, mais parce que votre jugement et vos intentions le sont.
5138 links
Si l'on souhaite ordonner de façon naturelle une colonne avec sqlite (c'est à dire en prenant en compte les accents et les nombres), il y a deux petits hacks à appliquer.
Le premier consiste à transformer la valeur en décimal, ce qui donne le code :
CAST(colonne AS DECIMAL)
Le deuxième est de créer une fonction sqlite via pdo, qui va prendre en compte la langue utilisée (ici, le français et ses accents). Cette fonction est à écrire en amont de la requête :
$pdo->sqliteCreateFunction('locale',
function ($data, $locale = 'root')
{
static $collators = array();
if (isset($collators[$locale]) !== true)
{
$collators[$locale] = new \Collator($locale);
}
return $collators[$locale]->getSortKey($data);
}
);
Ainsi, la recherche dans sqlite va donner :
SELECT * FROM matable WHERE id!=? ORDER BY CAST(macolonne AS DECIMAL), locale(macolonne, 'fr-FR')
On peut également utiliser une autre langue pour le même résultat.
function updateClock() {
var currentTime = new Date();
var currentHours = currentTime.getHours();
var currentMinutes = currentTime.getMinutes();
var currentSeconds = currentTime.getSeconds();
// Pad the minutes and seconds with leading zeros, if required
currentMinutes = (currentMinutes < 10 ? "0" : "") + currentMinutes;
currentSeconds = (currentSeconds < 10 ? "0" : "") + currentSeconds;
// Choose either "AM" or "PM" as appropriate
var timeOfDay = (currentHours < 12) ? "AM" : "PM";
// Convert the hours component to 12-hour format if needed
currentHours = (currentHours > 12) ? currentHours - 12 : currentHours;
// Convert an hours component of "0" to "12"
currentHours = (currentHours == 0) ? 12 : currentHours;
// Compose the string for display
var currentTimeString = currentHours + ":" + currentMinutes + ":" + currentSeconds + " " + timeOfDay;
document.querySelector('#clock').innerHTML = currentTimeString;
}
updateClock(); // To load the timer immediately
setInterval(updateClock, 1000); //To update it
<div id="clock"></div>