ArbNet

ArbNet
Рейтинг
146
Регистрация
27.10.2019
Программист самоучка
Sly32 #:

Человек изучает рекурсию. Зачем писать о чем то что вообще не имеет отношения к теме. Есть задача написать рекурсивный вывод, знаешь как- пиши или не позорься. 

Это вы сейчас позоритесь..

Вы, это я имею виду тебя и тех кто так учат новичков. Потому что надо учить на правильных примерах, именно для чего нужно использовать рекурсию, а не через одно место.. когда она и не нужна.

Потом такие вот "спецы" пишут дебильный код, потому что учителя сами такие.. не понимают для чего, зачем и как надо делать правильно..

Вот хороший пример рекурсии:

// Сортировка по расширению
function Recurs(res,arr){
    for(let key in arr){
        if(arr[key] instanceof Array)
            Recurs(res,arr[key]);
        else{
            let val=arr[key].split('.');
            if(!(res[val[1]] instanceof Array))res[val[1]]=[];
            res[val[1]].push(val[0]);
        }
    }
    return res
}

// тест функции рекурсии
let arr=[
    'aaa.xx',
    [
        'b10.xx',
        [
            'b21.zz',
            'b22.xx'
        ],
        'b30.zz',
    ],
    'ccc.zz'
]
let res=[];
Recurs(res,arr);
for(let key in res)
    console.log('С расширением '+key+' = '+res[key].join())
Sly32 #:

Это не рекурсия

Знаю. В данном случае она и не нужна. Рекурсию надо применять только для формирования вложенных данных ,например: меню в котором есть подменю, категории и тп.

Учитесь писать лаконичный код
function moreNine(num){
    while(num>9){
        let str=String(num);num=0;
        for(let nx=0;nx<str.length;nx++)
            num+=Number(str[nx]);
    }
    return num
}
console.log(moreNine(2246465462))
Cia.kirill #:
Да, мне знакома ситуация о которой вы говорите, когда создатель сайта исчезает с паролем от админки или что ещё противней, через пару лет начинает требовать неприличные за неё деньги.
Но я со своим админом уже 3 года общаюсь, да и есть общие знакомые если что, так что думаю паниковать пока рано.

Гнать пинками такого админа.. 😀 даже любой кто не понимает ничего в разработке сайта просто установив WP сделал бы вам сайт намного лучше.

Движок который быстро работать без CDN не может не движок 👎
Cia.kirill #:
Дело в том, что 2,5 года работал исправно, выполнял свою информационную функцию и приводил клиентов.
А сейчас видимо заболел.

Ужасный сайт. Безвкусно сделан, контента немного, но говна грузит всякого ужас..

этот файл у вас делает постоянные запросы https://vk.com/js/al/lite.js?425111682

reader000 #:
Плохая идея

Дебильный комментарий 😀 конкретнее...

Вы описали свои хотелки. Хотелки это хорошо, но при разработке возникают масса вопросов как это сделать, чтобы было понятно, просто и удобно. Приходится изобретать многие вещи и не по одному разу с переделыванием. Вот если вы более конкретно всё описали тогда нашёлся разработчик. А вам я так думаю на халяву хочется уже готовое решение. Используйте  formio, может ещё какой аналог тогда.

Я вот сейчас настраиваю js скрипт UI для своего инструмента и для формы тоже буду делать такой функционал, вопрос стоит как более удобно для пользователя это сделать, приходится многое обдумывать...

Было бы не плохо если у вас по этому поводу были какие-то мысли, но у вас только одни хотелки..

Думаю для ТС вопрос был риторический, желание есть, но он не двигается в направлении к своей цели.

Хотя может уже нашёл какое-то решение.

MkrtElion #:
Как бы так сказать, в пыхе работа с картинками идет через расширения.

Да в php много расширений, но они работают довольно таки быстро. В данном случае применяю GD

<?php
// пространство имён ядра
namespace core;
// Ресайз картинки
class RsizeImage {
  private $img,$itp;
  // Загрузка картинки
  public function Load($way) {
    $info=getimagesize($way);
    $this->itp=$info[2];
    switch($this->itp){
      case IMAGETYPE_JPEG:
        $this->img=imagecreatefromjpeg($way);break;
      case IMAGETYPE_GIF:
        $this->img=imagecreatefromgif($way);break;
      case IMAGETYPE_PNG:
        $this->img=imagecreatefrompng($way);
    }
  }
  // Сохранение картинки
  public function Save($way,$itp=IMAGETYPE_JPEG,$cmp=75,$prm=null){
    switch($itp){
      case IMAGETYPE_JPEG: // cmp - компрессия
        imagejpeg($this->img,$way,$cmp);break;
      case IMAGETYPE_GIF:
        imagegif($this->img,$way);break;
      case IMAGETYPE_PNG:
        imagepng($this->image,$filename);
      }
      if($prm!=null){
        chmod($way,$prm);// prm - разрешения
      }
  }
  // Показать картинку
  public function Show($itp=IMAGETYPE_JPEG){
    switch($itp){
      case IMAGETYPE_JPEG:
        header('Content-Type: image/jpeg');
        imagejpeg($this->img);break;
      case IMAGETYPE_GIF:
        imagegif($this->img);break;
      case IMAGETYPE_PNG:
        imagepng($this->img);
    }
  }
  // Изменение размера
  public function Resize($width,$height){
    $nimg=imagecreatetruecolor($width,$height);
    imagecopyresampled($nimg,$this->img,0,0,0,0,$width,$height,$this->Width(),$this->Height());
    $this->img=$nimg;
  }
  // Изменение размера по ширине
  public function ResizeWidth($width){
    $ratio=$width/$this->Width();
    $height=$this->Height()*$ratio;
    $this->Resize($width,$height);
  }
  // Изменение размера по высоте
  public function ResizeHeight($height){
    $ratio=$height/$this->Height();
    $width=$this->Width()*$ratio;
    $this->Resize($width,$height);
  }
  // Маштабирование от процентов
  public function Scale($prc){
    $width=$this->Width()*$prc/100;
    $height=$this->Height()*$prc/100;
    $this->Resize($width,$height);
  }
  // Ширина картинки
  public function Width(){return imagesx($this->img);}
  // Высота картинки
  public function Height(){return imagesy($this->img);}
}
?>

Сейчас меня вынуждаете вам что-то доказывать, я не собираюсь вам ничего доказывать. Я занимаюсь чем мне интересно.

Человек ТС ищет инструмент, я предложил в скайпе показать и рассказать что я сделал, всё. Завтра на дачу :) вернее уже сегодня

Всего: 2288