<input type="file" name="avatar" accept="image/gif, image/jpeg">
облегчает человеку выбор верного форматаif(isset($file))
не гарантирует что файл загрузился, по этому нужно проверять еще и еррор, перед тем как передавать несуществующие свойства в функцию$permitted_chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
ваще жесть, про хэш не слышали? Тем более еще и в разных регистрах называть файлы... function formatNumber(int $int): string
{
$k = (int) log($int, 1000);
$float = round($int / pow(1000, $k), 1);
$letters = ['К', 'М', 'Млрд'];
return $float . ($letters[--$k] ?? '');
}
echo formatNumber(7); // 7
echo formatNumber(78); // 78
echo formatNumber(789); // 789
echo formatNumber(7899); // 7.9К
echo formatNumber(78991); // 79К
echo formatNumber(789919); // 789.9К
echo formatNumber(7899191); // 7.9М
echo formatNumber(78991911); // 79М
echo formatNumber(789919119); // 789.9М
echo formatNumber(7899191191); // 7.9Млрд
echo formatNumber(78991911910); // 79Млрд
/**
* Class WebCategory
*
* @mixin Category
*/
class WebCategory
{
private $cat;
public function __construct(Category $cat)
{
$this->cat = $cat;
}
public function __call($name, $arguments)
{
return $this->cat->$name($arguments);
}
}
$id = $this->database->all("customs"); //тут получаем все значения из таблицы
$key_all = array_column($id, 'user_id'); //из полученных значений вытаскиваем ключи
$keys = array_unique($key_all); //убираем ключи с дублирующими значениями
$users = array(); //Инициализируем массив с пользователями
foreach ($keys as $key) {
$users[] = $this->database->whereAll("users", 'id', $key); //Две скобочки решают
}
1. Делают ли так?Делают, но это не хорошая практика. Во первых имеете шанс затереть какие-то настроечные данные объекта и получить непредсказуемость поведения. Во вторых, если у вас там значения из бд или другого хранилища в формате ключ-значение, лучше хранить их в отдельном поле, том же дата, но в виде stdClass, чтобы не путать их при работе с хранилищем с остальными полями, например так:
public function setData(array $data):void{
$this->data = (object)$data;
}