Новости Joomla

Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0

Метод registerListeners() в CMSPlugin в плагинах  планируется удалить в Joomla 7.0

👩‍💻 Метод registerListeners() в CMSPlugin в плагинах планируется удалить в Joomla 7.0.Этот метод регистрирует устаревшие слушатели событий в диспетчере, имитируя работу плагинов Joomla! 3.x и ниже для Joomla 4+. По умолчанию этот метод ищет все общедоступные методы, название которых начинается с on. Он регистрирует лямбда-функции (замыкания), которые пытаются преобразовать аргументы отправленного события в аргументы вызова метода и вызвать ваш метод on<Что-то>. Результат передаётся обратно событию в его аргумент result.Теперь этот слой совместимости с устаревшей Joomla 3 помечен к удалению в Joomla 7.0, которая должна выйти осенью 2027 года. Это означает, что те уникальные расширения от Joomla 2.5 / Joomla 3, которые ещё работали на Joomla 4-6 скорее всего окончательно перестанут работать на Joomla 7. Предполагается, что активные разработчики планомерно и постепенно избавляются от технического долга и обновляют свои расширения. @joomlafeed#joomla #разработка #php

0 Пользователей и 1 Гость просматривают эту тему.
  • 63 Ответов
  • 2748 Просмотров
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #30 : 28.10.2016, 10:38:47 »
Филипп Сорокин:
Вы меня тоже извините. Спасибо за совет!
dmitry_stas:
Попробую, спасибо заранее!
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #31 : 28.10.2016, 10:43:20 »
dmitry_stas: Спасибо! Работает! Вопрос с регуляркой конечно остается открытым... ибо хотелось бы оба варианта иметь "про запас".
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #32 : 28.10.2016, 10:55:23 »
Ну как? Культурно распарсить DOM, затем пройтись по скриптам, и также их распарсить.
зачем проходиться циклом, если парсинг нужного делается одной строкой без цикла?

Код
$files = json_decode(explode(';', explode('window.MODULE_CONFIG = ', $str)[1], 2)[0])->modules->clean->init_react->components[0]->props->contents->files;
сделает все, что нужно. потом делайте

foreach($files as $file){
   $href=$file->href;//ссылка
   $size=round($file->bytes/1024/1024,1);//размер
}
и выводите данные
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #33 : 28.10.2016, 16:53:16 »
Та нафиг тогда этот DOM придумали и циклы? Будем тяпляпом фигачить непойми как. Это по-нашему.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #34 : 28.10.2016, 16:59:05 »
Филипп, вы просто так, поговорить? :) DOM придумали для доступа к элементам дерева. циклы - когда надо обойти что то, что нужно либо все сразу, либо одно, но к чему нет прямого доступа. а когда нужно одно, к нему есть прямой доступ, и плюс к этому это "что то" не является элементом дерева, то "тяпляпом фигачить непойми как" - это использовать DOM вместе с циклом :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #35 : 28.10.2016, 18:11:33 »
Циклы и используют после получения коллекции элементов, что в JS, что и в других языках, которые поддерживают DOM. Но я не спорю :)
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #36 : 28.10.2016, 18:18:02 »
Но я не спорю :)
не, ну почему же? истина же интересна :) просто я либо не пойму вашей задумки, либо оно ну ни чуть не легче :) циклы это понятно. но... вот нашли вы допустим искомый элемент (скрипт) в дереве (что тоже вопрос - как нашли? проверяя что?). а дальше? регуляркой вырезаете кусок самого скрипта? покажите полностью решение.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

fsv

  • Живу я здесь
  • 2784
  • 412 / 2
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #37 : 28.10.2016, 18:18:21 »
Парсить. Регулярки. То работает, то не работает. А будет ли дальше работать на других ссылках?
API есть. Я понимаю, что
Есть почти готовое решение, проблема чуть поправить регулярку. А Вы предлагает всё заново начинать? Совсем нет времени. Это правда.
, но учитывая, что за 3,5 недели не сделали, можно было бы доки почитать и сделать нормально.
P.S. с API DropBox не работал, сейчас мельком взглянул, могу ошибаться, но вопрос решаемый.
Веб-разработка: заказ. Только новая разработка.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #38 : 28.10.2016, 18:23:49 »
API есть
ну это само собой самое верное решение. и в конечном итоге однозначно надо сделать так, когда во временем попроще будет
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #39 : 28.10.2016, 20:14:30 »
Цитировать
не, ну почему же? истина же интересна Azn просто я либо не пойму вашей задумки

Всё то же самое, что писал Роберт, только поэтапно и через более надёжный метод DOM, который специально для этого предназначен. Затем, конечно же, содержимое элементов обрабатывается регулярками. И без JSON. Какой в нём смысл, если определить границы JSON-строки нереально? На точку с запятой ориентироваться? Так её может и не быть вовсе, или же она может присутствовать внутри JSON. Тогда обломушки.

Собственно, я бы сделал так:

Код: php
$dom = new DOMDocument;
$dom->loadHTML(file_get_contents('https://www.dropbox.com/sh/aev1ky5bjbk8cef/Eq9fDTTyZp'));
$scripts = $dom->getElementsByTagName('script');
$links = array();
foreach ($scripts as $script) {
    if(!empty($script->nodeValue) && preg_match_all('#"href"\s*:\s*"([^"]+)"#is', $script->nodeValue, $matches))
    {
        $links[] = $matches[1];
    }
}
var_dump($links);
« Последнее редактирование: 28.10.2016, 20:39:19 от Филипп Сорокин »
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #40 : 28.10.2016, 21:05:27 »
Цитировать
Так её может и не быть вовсе
так тут чего угодно может не быть или не стать :) с таким успехом и href может через время не стать, поменяют структуру, и так далее. как сказал fsv единственное что будет хоть как то более менее долгоиграющее - это юзать API. а без него остается только работать с тем, что есть на данный момент.

в общем ладно :) для себя лично профита не увидел - имхо цикл лишний, регулярок 100500 штук, но может кому то больше понравится.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #41 : 28.10.2016, 21:23:04 »
Цитировать
юзать API
Золотые слова. Отблагодарим fsv репой :)
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #42 : 28.10.2016, 21:33:18 »
согласен :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #43 : 30.10.2016, 08:07:54 »
Прошу ещё немного помощи.
В Вашем коде:
Код
$files = json_decode(explode(';', explode('window.MODULE_CONFIG = ', $str)[1], 2)[0])->modules->clean->init_react->components[0]->props->contents->files;
Ругается на одном хостинге:
Код
Parse error: syntax error, unexpected '[' in ...php on line ...
На 3х остальных хостингах работает отлично!
Что может быть? Есть универсальное решение?
:)
Спасибо заранее за помощь!
« Последнее редактирование: 30.10.2016, 08:59:46 от ecolora »
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #44 : 30.10.2016, 08:31:16 »
не понимает массив explode()[]. php версия не подходит, ниже чем нужно. по переменным explode разнести надо

Код
$str = explode('window.MODULE_CONFIG = ', $str);
$str = explode(';', $str[1], 2);
$files = json_decode($str[0])->modules->clean->init_react->components[0]->props->contents->files;
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #45 : 30.10.2016, 09:05:36 »
Спасибо! Будем надеяться, что поймёт. ;-)
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #46 : 18.11.2016, 05:29:52 »
Dropbox опять поменял код. Коллеги, помогите, пожалуйста ещё раз поправить:
https://www.dropbox.com/sh/aev1ky5bjbk8cef/Eq9fDTTyZp
Пробовал менять код на:
Код
       $str = explode('mod.initialize_module', $str);
       $files = json_decode($str[0])->components[0]->props->contents->files;
Не помогает.
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #47 : 18.11.2016, 08:10:14 »
А что в var_dump($str[0]); получается?
А вообще лучше всего воспользоваться https://www.dropbox.com/developers/documentation/http/documentation
« Последнее редактирование: 18.11.2016, 08:18:19 от Arkadiy »
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #48 : 18.11.2016, 09:46:37 »
вроде бы
Код
$str = explode('mod.initialize_module(', $str);
$str = explode(')', $str[1], 2);
$files = json_decode($str[0])->modules->clean->init_react->components[0]->props->contents->files;

но вообще, как уже и говорили, это будет постоянно. надо принимать стратегическое решение перехода на API :)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #49 : 18.11.2016, 09:58:40 »
Arkadiy:
Я ошибся. Надо $str[1], Такой код:
Код
       $str = explode('mod.initialize_module', $str);
В $str[1] заносит:
Цитировать
({"components": [{"module_name": "modules/clean/react/shared_link_folder/app", "install_hot_reloading_attrs": false, "props": {"fileViewTarget": 1, "showSyncCoachmark": false, "activityContext": 1, "openImmediatelyInApp": false, "accountMenuOptions": {"accountPhotoUrl": null, "showProUpgradeLink": false, "showBusinessUpgradeLink": false, "isPagelet": false, "showNameOnButton": true, "showProGiftingLink": false, "isMaestroDesign": false, "isToolbarAccountPhotoEnabled": false}, "folderShareToken": {"linkType": "s", "itemId": null, "linkKey": "aev1ky5bjbk8cef", "displayName": "music", "isPackage": false, "subPath": "", "secureHash": "Eq9fDTTyZp"}, "fileViewOrigin": 16, "membershipRequestOptions": null, "user": null, "folderSharedLinkInfo": {"url": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AAAh0-dAGBcFoiSzUKQBU9Zra?dl=0", "ownerTeamName": null, "ownerName": "Anton Zaytsev", "ownerTeamLogo": null}, "folderSharePermission": {"canCopyToDropboxRoles": ["anonymous"], "canRemoveLinkUids": [], "canPrintRoles": ["anonymous"], "canDownloadRoles": ["anonymous"], "canSyncToDropboxRoles": [], "canViewContextMenuRoles": ["anonymous"]}, "folder": {"open_in_app_data": null, "is_dir": true, "href": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AAAh0-dAGBcFoiSzUKQBU9Zra?dl=0", "shared_folder_id": null, "filename": "music"}, "takedownRequestType": null, "contents": {"files": [{"beacon_context": "AAAi0KAWXIcpEOmiB3-fz8JQFN2wImea1Po", "preview_url": null, "href": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AABuk3EGJBK5KDaJRPaEZWEba/Avicii_-_Levels.mp3?dl=0", "file_id": "id:Zc29slfnksAAAAAAAAAAWA", "is_dir": false, "filename": "Avicii_-_Levels.mp3", "direct_blockserver_link": "https://dl.dropboxusercontent.com/content_link/JNgff7Sa9VDW9nOrkkKxZCVaP4PSQtn02MpMCVSzCkVfi6xsqU1v5nNLXbKbCcMX/file?dl=0", "bytes": 5342591, "ts": 1343275200, "preview_type": "audio", "sjid": 600, "thumbnail_url_tmpl": null, "ns_id": 73437149}, {"beacon_context": "AACKWEs_2soW_86uFxDWYRhbOZGnQ2MRAUg", "preview_url": null, "href": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AABFNLda_o8FbKHMPdna9I0za/Elka_-_Na_bolshom_vozdushnom_share.mp3?dl=0", "file_id": "id:Zc29slfnksAAAAAAAAAAVw", "is_dir": false, "filename": "Elka_-_Na_bolshom_vozdushnom_share.mp3", "direct_blockserver_link": "https://dl.dropboxusercontent.com/content_link/y4bX3ddlyPkRJEp1pFif5EoQP54EucC9qkoEoln7aIosQ3RFHCF6TVnMfkIAcWnG/file?dl=0", "bytes": 7703274, "ts": 1343275413, "preview_type": "audio", "sjid": 601, "thumbnail_url_tmpl": null, "ns_id": 73437149}, {"beacon_context": "AABNug88BxPMeWVvTT9hZ8F97MytPTws5xU", "preview_url": null, "href": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AAClbr7-M-MhQLH8W0iw6e8va/Fly_project_-_Musica.mp3?dl=0", "file_id": "id:Zc29slfnksAAAAAAAAAAVg", "is_dir": false, "filename": "Fly_project_-_Musica.mp3", "direct_blockserver_link": "https://dl.dropboxusercontent.com/content_link/VoFHOXwvIJRH0Z63MPExR37Tz8mSqxTspMahx4VP8kVK7Vr1DQCkI7YcgACQMCBG/file?dl=0", "bytes": 8773280, "ts": 1343275612, "preview_type": "audio", "sjid": 602, "thumbnail_url_tmpl": null, "ns_id": 73437149}, {"beacon_context": "AADSY3-2HCt4d9jgweUPDtlDVFt4tARTg8I", "preview_url": null, "href": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AACiK9iSmHZEsSm2udEgsb1oa/Maroon_5_feat._Christina_aguilera_-_Moves_like_jagger_.mp3?dl=0", "file_id": "id:Zc29slfnksAAAAAAAAAAVQ", "is_dir": false, "filename": "Maroon_5_feat._Christina_aguilera_-_Moves_like_jagger_.mp3", "direct_blockserver_link": "https://dl.dropboxusercontent.com/content_link/UKs42PzhXwBbbLRhntJqRTlwmF5H0ubBfETC87MPvgreXMwSUUQlDhs2NMSsYjtG/file?dl=0", "bytes": 8054350, "ts": 1343275796, "preview_type": "audio", "sjid": 603, "thumbnail_url_tmpl": null, "ns_id": 73437149}, {"beacon_context": "AABmN52qlgbg5nokiqNeLaLhh-S22QqOeMo", "preview_url": null, "href": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AADL6Fzzl2KR8UM79LR8HHKKa/Michel_Telo_-_Barabarabara_bereberebere.mp3?dl=0", "file_id": "id:Zc29slfnksAAAAAAAAAAVA", "is_dir": false, "filename": "Michel_Telo_-_Barabarabara_bereberebere.mp3", "direct_blockserver_link": "https://dl.dropboxusercontent.com/content_link/V2RJTSIt1cM3e7Gk9yxcIE81VVRRAMWS5bfbldKThkb1T66nTdtA5524Uu4stjxX/file?dl=0", "bytes": 7100800, "ts": 1343278355, "preview_type": "audio", "sjid": 604, "thumbnail_url_tmpl": null, "ns_id": 73437149}, {"beacon_context": "AAASkLdMB8Nh-BHg7jVD7X5NsJ-IcEmFyLM", "preview_url": null, "href": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AAAhLbTZZ89aU-FoITwkk85Ya/Quest_Pistols_-_Ty_tak_krasiva.mp3?dl=0", "file_id": "id:Zc29slfnksAAAAAAAAAAUw", "is_dir": false, "filename": "Quest_Pistols_-_Ty_tak_krasiva.mp3", "direct_blockserver_link": "https://dl.dropboxusercontent.com/content_link/cqNc7sqGYTZYBcrk00khJEdUqF04J52EaubCYTYtFLdQmQ9q8EmNPT0oPARKRzf8/file?dl=0", "bytes": 6939435, "ts": 1343278697, "preview_type": "audio", "sjid": 605, "thumbnail_url_tmpl": null, "ns_id": 73437149}, {"beacon_context": "AADmwOWGWMPM5Q9fHEsUx_nX1PQWrD4zEc0", "preview_url": null, "href": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AADW-_YrNqY1OK8qz_qElKy1a/Selena_gomez_and_The_scene_-_Love_you_like_a_love_song_.mp3?dl=0", "file_id": "id:Zc29slfnksAAAAAAAAAAUg", "is_dir": false, "filename": "Selena_gomez_and_The_scene_-_Love_you_like_a_love_song_.mp3", "direct_blockserver_link": "https://dl.dropboxusercontent.com/content_link/3ps63d6IFSQPLIKPA2OP5tgzYQWkeEY4fiyf0BPepP8PCNLOrqB3uzLc9jOzKdQp/file?dl=0", "bytes": 6037277, "ts": 1343278849, "preview_type": "audio", "sjid": 606, "thumbnail_url_tmpl": null, "ns_id": 73437149}, {"beacon_context": "AABIwWycm2tBL_yJg0PegXY79342MZl0NAo", "preview_url": null, "href": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AABZtc3Cllei6ICPEEMSxt7ca/Stromae_-_Alors_on_dance_DJ_Pomeha_radio_remix.mp3?dl=0", "file_id": "id:Zc29slfnksAAAAAAAAAAUQ", "is_dir": false, "filename": "Stromae_-_Alors_on_dance_DJ_Pomeha_radio_remix.mp3", "direct_blockserver_link": "https://dl.dropboxusercontent.com/content_link/HDIS7gEHWTJr8xBIyn49BIa8Zl8J5jcNxsEPwxu6kxOsR4VzuS18oDH271m7yJpp/file?dl=0", "bytes": 8432413, "ts": 1343279071, "preview_type": "audio", "sjid": 607, "thumbnail_url_tmpl": null, "ns_id": 73437149}, {"beacon_context": "AAD6PQigzQf0P8egGRnnuxmXZYvfQLT5rpQ", "preview_url": null, "href": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AACoEi4uj50D_w9hdNaDS1qua/Wonder_Girls_-_Nobody.mp3?dl=0", "file_id": "id:Zc29slfnksAAAAAAAAAAUA", "is_dir": false, "filename": "Wonder_Girls_-_Nobody.mp3", "direct_blockserver_link": "https://dl.dropboxusercontent.com/content_link/atlDHJBywqGLed4fLMRQtBPT5vHoPDHpLdCrwtm7w0N3Pa4N1rKjx0lH5nLJvrfg/file?dl=0", "bytes": 8604053, "ts": 1343279319, "preview_type": "audio", "sjid": 608, "thumbnail_url_tmpl": null, "ns_id": 73437149}, {"beacon_context": "AADlFqkeXFGuM9y2E30K7AYRO0GPqK2nHYk", "preview_url": null, "href": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AABzEaLDdEg-LKxm5AbzCpj7a/Yolanda_be_cool_and_Dcup_-_We_no_speak_americano.mp3?dl=0", "file_id": "id:Zc29slfnksAAAAAAAAAATw", "is_dir": false, "filename": "Yolanda_be_cool_and_Dcup_-_We_no_speak_americano.mp3", "direct_blockserver_link": "https://dl.dropboxusercontent.com/content_link/nc8F7EEcpq80eTItu9B4C4dLo2daxpagIZs2ilHRCkh0KUANTzdXboYW3xVyezLi/file?dl=0", "bytes": 10830272, "ts": 1343279586, "preview_type": "audio", "sjid": 609, "thumbnail_url_tmpl": null, "ns_id": 73437149}], "folders": [], "fileSharedLinkInfos": [{"url": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AABuk3EGJBK5KDaJRPaEZWEba/Avicii_-_Levels.mp3?dl=0", "ownerTeamName": null, "ownerName": "Anton Zaytsev", "ownerTeamLogo": null}, {"url": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AABFNLda_o8FbKHMPdna9I0za/Elka_-_Na_bolshom_vozdushnom_share.mp3?dl=0", "ownerTeamName": null, "ownerName": "Anton Zaytsev", "ownerTeamLogo": null}, {"url": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AAClbr7-M-MhQLH8W0iw6e8va/Fly_project_-_Musica.mp3?dl=0", "ownerTeamName": null, "ownerName": "Anton Zaytsev", "ownerTeamLogo": null}, {"url": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AACiK9iSmHZEsSm2udEgsb1oa/Maroon_5_feat._Christina_aguilera_-_Moves_like_jagger_.mp3?dl=0", "ownerTeamName": null, "ownerName": "Anton Zaytsev", "ownerTeamLogo": null}, {"url": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AADL6Fzzl2KR8UM79LR8HHKKa/Michel_Telo_-_Barabarabara_bereberebere.mp3?dl=0", "ownerTeamName": null, "ownerName": "Anton Zaytsev", "ownerTeamLogo": null}, {"url": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AAAhLbTZZ89aU-FoITwkk85Ya/Quest_Pistols_-_Ty_tak_krasiva.mp3?dl=0", "ownerTeamName": null, "ownerName": "Anton Zaytsev", "ownerTeamLogo": null}, {"url": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AADW-_YrNqY1OK8qz_qElKy1a/Selena_gomez_and_The_scene_-_Love_you_like_a_love_song_.mp3?dl=0", "ownerTeamName": null, "ownerName": "Anton Zaytsev", "ownerTeamLogo": null}, {"url": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AABZtc3Cllei6ICPEEMSxt7ca/Stromae_-_Alors_on_dance_DJ_Pomeha_radio_remix.mp3?dl=0", "ownerTeamName": null, "ownerName": "Anton Zaytsev", "ownerTeamLogo": null}, {"url": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AACoEi4uj50D_w9hdNaDS1qua/Wonder_Girls_-_Nobody.mp3?dl=0", "ownerTeamName": null, "ownerName": "Anton Zaytsev", "ownerTeamLogo": null}, {"url": "https://www.dropbox.com/sh/aev1ky5bjbk8cef/AABzEaLDdEg-LKxm5AbzCpj7a/Yolanda_be_cool_and_Dcup_-_We_no_speak_americano.mp3?dl=0", "ownerTeamName": null, "ownerName": "Anton Zaytsev", "ownerTeamLogo": null}], "fileSharePermissions": [{"canCopyToDropboxRoles": ["anonymous"], "canRemoveLinkUids": [], "canPrintRoles": ["anonymous"], "canDownloadRoles": ["anonymous"], "canSyncToDropboxRoles": [], "canViewContextMenuRoles": ["anonymous"]}, {"canCopyToDropboxRoles": ["anonymous"], "canRemoveLinkUids": [], "canPrintRoles": ["anonymous"], "canDownloadRoles": ["anonymous"], "canSyncToDropboxRoles": [], "canViewContextMenuRoles": ["anonymous"]}, {"canCopyToDropboxRoles": ["anonymous"], "canRemoveLinkUids": [], "canPrintRoles": ["anonymous"], "canDownloadRoles": ["anonymous"], "canSyncToDropboxRoles": [], "canViewContextMenuRoles": ["anonymous"]}, {"canCopyToDropboxRoles": ["anonymous"], "canRemoveLinkUids": [], "canPrintRoles": ["anonymous"], "canDownloadRoles": ["anonymous"], "canSyncToDropboxRoles": [], "canViewContextMenuRoles": ["anonymous"]}, {"canCopyToDropboxRoles": ["anonymous"], "canRemoveLinkUids": [], "canPrintRoles": ["anonymous"], "canDownloadRoles": ["anonymous"], "canSyncToDropboxRoles": [], "canViewContextMenuRoles": ["anonymous"]}, {"canCopyToDropboxRoles": ["anonymous"], "canRemoveLinkUids": [], "canPrintRoles": ["anonymous"], "canDownloadRoles": ["anonymous"], "canSyncToDropboxRoles": [], "canViewContextMenuRoles": ["anonymous"]}, {"canCopyToDropboxRoles": ["anonymous"], "canRemoveLinkUids": [], "canPrintRoles": ["anonymous"], "canDownloadRoles": ["anonymous"], "canSyncToDropboxRoles": [], "canViewContextMenuRoles": ["anonymous"]}, {"canCopyToDropboxRoles": ["anonymous"], "canRemoveLinkUids": [], "canPrintRoles": ["anonymous"], "canDownloadRoles": ["anonymous"], "canSyncToDropboxRoles": [], "canViewContextMenuRoles": ["anonymous"]}, {"canCopyToDropboxRoles": ["anonymous"], "canRemoveLinkUids": [], "canPrintRoles": ["anonymous"], "canDownloadRoles": ["anonymous"], "canSyncToDropboxRoles": [], "canViewContextMenuRoles": ["anonymous"]}, {"canCopyToDropboxRoles": ["anonymous"], "canRemoveLinkUids": [], "canPrintRoles": ["anonymous"], "canDownloadRoles": ["anonymous"], "canSyncToDropboxRoles": [], "canViewContextMenuRoles": ["anonymous"]}], "fileShareTokens": [{"linkType": "s", "itemId": null, "linkKey": "aev1ky5bjbk8cef", "displayName": "Avicii_-_Levels.mp3", "isPackage": false, "subPath": "/Avicii_-_Levels.mp3", "secureHash": "AABuk3EGJBK5KDaJRPaEZWEba"}, {"linkType": "s", "itemId": null, "linkKey": "aev1ky5bjbk8cef", "displayName": "Elka_-_Na_bolshom_vozdushnom_share.mp3", "isPackage": false, "subPath": "/Elka_-_Na_bolshom_vozdushnom_share.mp3", "secureHash": "AABFNLda_o8FbKHMPdna9I0za"}, {"linkType": "s", "itemId": null, "linkKey": "aev1ky5bjbk8cef", "displayName": "Fly_project_-_Musica.mp3", "isPackage": false, "subPath": "/Fly_project_-_Musica.mp3", "secureHash": "AAClbr7-M-MhQLH8W0iw6e8va"}, {"linkType": "s", "itemId": null, "linkKey": "aev1ky5bjbk8cef", "displayName": "Maroon_5_feat._Christina_aguilera_-_Moves_like_jagger_.mp3", "isPackage": false, "subPath": "/Maroon_5_feat._Christina_aguilera_-_Moves_like_jagger_.mp3", "secureHash": "AACiK9iSmHZEsSm2udEgsb1oa"}, {"linkType": "s", "itemId": null, "linkKey": "aev1ky5bjbk8cef", "displayName": "Michel_Telo_-_Barabarabara_bereberebere.mp3", "isPackage": false, "subPath": "/Michel_Telo_-_Barabarabara_bereberebere.mp3", "secureHash": "AADL6Fzzl2KR8UM79LR8HHKKa"}, {"linkType": "s", "itemId": null, "linkKey": "aev1ky5bjbk8cef", "displayName": "Quest_Pistols_-_Ty_tak_krasiva.mp3", "isPackage": false, "subPath": "/Quest_Pistols_-_Ty_tak_krasiva.mp3", "secureHash": "AAAhLbTZZ89aU-FoITwkk85Ya"}, {"linkType": "s", "itemId": null, "linkKey": "aev1ky5bjbk8cef", "displayName": "Selena_gomez_and_The_scene_-_Love_you_like_a_love_song_.mp3", "isPackage": false, "subPath": "/Selena_gomez_and_The_scene_-_Love_you_like_a_love_song_.mp3", "secureHash": "AADW-_YrNqY1OK8qz_qElKy1a"}, {"linkType": "s", "itemId": null, "linkKey": "aev1ky5bjbk8cef", "displayName": "Stromae_-_Alors_on_dance_DJ_Pomeha_radio_remix.mp3", "isPackage": false, "subPath": "/Stromae_-_Alors_on_dance_DJ_Pomeha_radio_remix.mp3", "secureHash": "AABZtc3Cllei6ICPEEMSxt7ca"}, {"linkType": "s", "itemId": null, "linkKey": "aev1ky5bjbk8cef", "displayName": "Wonder_Girls_-_Nobody.mp3", "isPackage": false, "subPath": "/Wonder_Girls_-_Nobody.mp3", "secureHash": "AACoEi4uj50D_w9hdNaDS1qua"}, {"linkType": "s", "itemId": null, "linkKey": "aev1ky5bjbk8cef", "displayName": "Yolanda_be_cool_and_Dcup_-_We_no_speak_americano.mp3", "isPackage": false, "subPath": "/Yolanda_be_cool_and_Dcup_-_We_no_speak_americano.mp3", "secureHash": "AABzEaLDdEg-LKxm5AbzCpj7a"}]}, "outOfQuota": false}, "elem_id": "component9114370474989968945", "component_name": "SharedLinkFolderApp"}]}); })],[["modules/clean/legacy_pyxl_controllers/tabbable"], (function(mod){ var init =
И почему это не работает, не понятно:
Код
$files = json_decode($str[1])->components[0]->props->contents->files;
dmitry_stas: Ваш вариант к сожалнию не помог
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #50 : 18.11.2016, 10:07:15 »
Потому, что к json примешиваются ненужные символы. Во первых ( в начале совершенно лишняя, во вторых в конце наверняка тоже много лишнего. На первый взляд это )],[["modules/clean/legacy_pyxl_controllers/tabbable"], (function(mod){ var init =
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #51 : 18.11.2016, 10:09:56 »
Честно говоря, вообще не до конца понимаю, какая д.б. структура для JSON и что вырезать в итоге (старею, занят другой деятельностью)
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #52 : 18.11.2016, 10:14:34 »
Внутри текста есть объект. В json он находится внутри {}, внутри объекта есть свойства, они могут быть объектами {}, массивами [], строками "" или числами. Других видов данных я не припомню. Названия свойств заключаются в двойные кавычки, через двоеточие идет значение свойства ("property": 1), свойства разделяются запятыми. Вот вроде и все примудрости.
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #53 : 18.11.2016, 10:18:05 »
Кто-нибудь может сказатЬ, какой должен быть код, чтобы получить нужный массив $files?
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #54 : 18.11.2016, 10:21:41 »
$files = json_decode($str[0])->components[0]->props->contents->files;
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #55 : 18.11.2016, 10:24:04 »
dmitry_stas:
$str[0] вообще не содержит даже подобие JSON, он в $str[1] и то с мусором. :-(
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #56 : 18.11.2016, 10:35:14 »
я написал как надо сделать. вопрос был только в последней строке, которую исправил позже.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Arkadiy

  • Гуру
  • 5317
  • 463 / 2
  • Крепитесь, други.
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #57 : 18.11.2016, 11:00:26 »
Для начала надо подготовить валидный json, потом его декодировать, иначе ничего не получится.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #58 : 18.11.2016, 11:17:09 »
он и подготовлен :) тот код, который я написал, полностью рабочий. с учетом последней правки
Код
$files = json_decode($str[0])->components[0]->props->contents->files;
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ecolora

  • Завсегдатай
  • 1535
  • 171 / 2
  • творец
Re: Вытащить все ссылки на файлы с DropBox
« Ответ #59 : 18.11.2016, 11:37:37 »
dmitry_stas:
Спасибо! Всё действительно работает!
Я рифме друг словесной. Тут
Свой упражняю словоблуд:
Блог Ecolora
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Нужно править редирект компонента FAQ book Pro

Автор cantsave

Ответов: 0
Просмотров: 899
Последний ответ 12.06.2017, 15:53:08
от cantsave
Безопасность, был взлом

Автор Dmitriy M

Ответов: 2
Просмотров: 877
Последний ответ 25.02.2017, 21:55:44
от voland
необходим ряд доработок для VirtueMart 3

Автор winni-pyx

Ответов: 9
Просмотров: 1092
Последний ответ 21.12.2016, 12:01:40
от dmitry_stas
Странное поведение is_dir

Автор ecolora

Ответов: 23
Просмотров: 900
Последний ответ 01.11.2016, 07:48:21
от Филипп Сорокин