- var_dump: documentation ( source)
- range: documentation ( source)
- str_pad: documentation ( source)
<?php
function _createUniqueSkuPartFromId($configurableId){
echo 'calling ' . __FUNCTION__ . '(' . $configurableId . ')' . PHP_EOL;
$chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
$charsLength = strlen($chars);
$characterPart = '';
$value = $configurableId;
for($i = 3; $i > 0 ; $i--) {
echo PHP_EOL . '$i = ' . $i;
var_dump($value);
$mod = $value % $charsLength;
$floordiv = $value/$charsLength;
var_dump($mod, $floordiv);
$characterPart = $chars {$mod} . $characterPart;
$value = $floordiv;
}
$numberPart = str_pad(99 - ($configurableId % 100), 2, '0', STR_PAD_LEFT);
echo 'done, created number part and character part that are expected to be unique ' . PHP_EOL;
echo '$numberPart: ' . $numberPart . PHP_EOL;
echo '$characterPart: ' . $characterPart . PHP_EOL;
echo 'concated: ' . $numberPart.$characterPart.PHP_EOL . '----------------------------' . PHP_EOL;
return $numberPart . $characterPart;
}
$range = range(100, 105);
foreach ($range as $configId) {
_createUniqueSkuPartFromId($configId);
}