- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Переиграть и победить: как анализировать конкурентов для продвижения сайта
С помощью Ahrefs
Александр Шестаков
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
можно еще избавиться от присвоения в строке
foreach ($e as $a) {
таким образом
while (sizeof($e)){
print(join('/', $e)."/<br>");
array_pop($e);
}
Так, походу мне не спать )))
gormarket, И вам спасибо, сейчас проверим
а так? имхо, логчно, если надо уменьшать кол-во элементов, юзать array_pop, вообще без подсчета элементов
$folder = 'news/catalog/my/';
$out = explode('/', '/'.$folder );
while(array_pop($out) || count($out)>0){
echo join('/',$out).'/<br />';
}
p.s. если делать так while(array_pop($out)){ , без каунта - спотыкается на пустых элементаз массива
Ок, уговорили.
Только обьясните чем sizeof быстрее count
http://php.net/manual/ru/function.sizeof.php
Есть некоторая мелочь там т.к. sizeof это оригинал, а count уже псевдоним, и там выигрышный в мелочах, но мне как-то стало удобнее sizeof использовать и остальное бла-бла-бла и т.п.
Короче как и писал ждём-с чудес от 5.4, которые по новостям УЖЕ скоро выйдет и работы по нему по сути завершены.
Zlo_606ep, На обсчет элементов в условии циклов уже указали и это верно, при каждом проходе мы пересчитываем все то что можно было пересчитать заранее. (спасибо LEOnidUKG)
Более идельного решения чем предложил LinnTroll пока нет. Решение gormarket пока не проверил.
Zlo_606ep, На обсчет элементов в условии циклов уже указали и это верно, при каждом проходе мы пересчитываем все то что можно было пересчитать заранее. (спасибо LEOnidUKG)
Более идельного решения чем предложил LinnTroll пока нет. Решение gormarket пока не проверил.
array_pop - уменьшает кол-во элементов, подсчет тут каждый раз новое возращает значение, можно его как-то еще оптимизировать, но array_pop тут само-то
Zlo_606ep, посмотрю, но завтра, ок?
Zlo_606ep, посмотрю, но завтра, ок?
ок ) там, собственно подсчет и не нужен, просто без него while на пустой элемент реагирует как на false, забороть можно еще чем-нибудь простым, вот, например, без подсчета:
while(array_pop($out) || $out!=array())
вообще метод один в один как gormarket предложил, просто array_pop можно сразу в while вставить
чую что что-то не так
ваш выглядит кривовато и как-то с головы на ногу поставленным, но в рамках поставленной задачи он работает и хорошо. Экономия на спичках выходит, если его оптимизировать.
А вот что в данном случае нужно оптимизировать, так это ваше время затраченное на попытку решить такую задачу. А ведь через пару недель вы даже не вспомните что занимались её решением :)
и еще немного в защиту первого метода с count в условии цикла
вариант
while(array_pop($out) || (count($out)>0)
очень даже имеет право на жизнь, так как оператор "или" при истинной левой части не проверяет правую, то есть подсчет сработает только в случае false или пустом элементе слева, в чем можно убедиться так:
while(array_pop($out) || (count($out)>0 && print(count($out)))){
подсчитает 1 раз