Obtinere ultimele N caractere din ID

Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
sagap
Mesaje: 12

Obtinere ultimele N caractere din ID

Salut,
Am nevoie de o a variabila care se extraga ultimele 3 numere din tabelul id. De ex:

Cod: Selectaţi tot

$id = "123456"; // (in loc de acel numar voi face un query mysql)
$newid = "456"; // (de asta am nevoie)
iar daca

Cod: Selectaţi tot

$id = "1"; 
$newid = "001"; 
Stii cumva cu ce comanda as putea face asta?

MarPlo Mesaje: 4343
Poti sa folosesti in php functia getNId() din urmatorul cod.
Returneaza primele sau ultimele $n caractere dintr-un numar sau sir.

Cod: Selectaţi tot

//return a number of $n characters from $id
// $n>0 return first $n characters; $n<0 return last $n characters
function getNId($id, $n){
  $id = (string)$id;
  $id = ($n>0) ? substr($id, 0, $n) : substr($id, $n);
  $nr = abs($n) - strlen($id);
  if($nr >0) for($i=0; $i<$nr; $i++) $id ='0'.$id;
  return $id;
}

$id =123456;
$nid = getNId($id, -3);
echo $nid; // 456

//Examples
echo getNId('abc_xyz', -3); // xyz
echo getNId('11844', 3); // 118
echo getNId(8, -3); // 008
echo getNId(78, -3); // 078
echo getNId(78, 4); // 0078

Subiecte similare