LINUX.ORG.RU

PHP & OpenOffice


0

0

Нужно из PHP с помощью OpenOffice(calc) открыть файл, поменять там кое-что и сохранить в .htm, .ods, .xls. Кто-нибудь делал подобное? Может есть библиотека для PHP? В какую сторону копать?

anonymous

есть библиотека для xls файлов. гугл тебя спасет.

или если хочеш хардкора бери описание OpenDocument и разбирай xml ручками

barbuza
()
Ответ на: комментарий от barbuza

Библиотеку для xls я видел. Только она работает с 95-м форматом xls. И потом я хотел хранить документы в .ods, а xls делать только по запросу....

anonymous
()
Ответ на: комментарий от anonymous

Мне не нужен конвертер MsWord. Мне нужно "с помощью OpenOffice(CALC) открыть файл, поменять там кое-что и сохранить". Т.е. работать с документом через CALC(обращаться к листам, ячейкам, именованным областям, выполнять пересчет по формулам и т.п.)

anonymous
()
Ответ на: комментарий от anonymous

Ага, типа запускается опеноффисе и висит себе в памяти.
А ему скармливаются всякие доки.

Например Alfresco так делает. Смотри там.

roller ★★★
()
Ответ на: комментарий от roller

Alfresco на jsp, а мне нужно php. И еще: я не нашел в ихней demo-online серверного обработчика документов. Может нужно скачать и у себя поковырять? Есть еще какие-нибудь идеи?

anonymous
()

Жесть. Ну можно наверно как-то код Oo поковырять и сварганить простеньку библиотечку, которую уже модулем подцепить к php. А так запости feature request куда-нить в php.net, может, через пару месяцев сделают модуль.

Anoxemian ★★★★★
()
Ответ на: комментарий от anonymous

ну например так: напиши макрос, допустим на питоне, загрузи макрос в офис, а в макросе - открывай на прослушивание порт localhost:1234 при получении команд из которого выполняй нужные действия с документом/офисом. из php - подключайся на этот порт и шли команды что нужно сотворить с документом.

Eshkin_kot ★★
()
Ответ на: комментарий от Eshkin_kot

Вообще-то хотелось всю математику в одном месте держать, а так получается еще один "сервер" для обработки документов... Вообще мысль мне нравится, только придется написать вызов всех внутренних функий через внешние. А OpenOffice без GUI запустить можно?

anonymous
()
Ответ на: комментарий от anonymous

Блин. Да посмотри ты альфреску. Не просто так ведь сказал. Да на ява, но смысл то не в этом.

Без гуя нельзя. Полазий по ихней вики рассказывается как запустить Xvfb и на них запускать.

roller ★★★
()
Ответ на: комментарий от roller

А по-моему можно. ОпенОфис умеет работать в моде сервера и слушать на определенном порту. Но там какой-то бешеный протокол внутри. У меня девочки знакомые делают примерно то, что хочет автор топика, правда с презентациями(ppt, odp) и на java, могу у них поспрашивать.

Snorg
()
Ответ на: комментарий от Snorg

>девочки знакомые, могу у них поспрашивать. Поспрашивайте, пожалуйста. Очень интересно...

anonymous
()
Ответ на: комментарий от anonymous

Я нашел куда рыть. Нужно что-то вроде этого: soffice -accept="socket,host=localhost,port=9303;urp;StarOffice.ServiceManager" ; Всем спасибо!

anonymous
()
Ответ на: комментарий от anonymous

> Я нашел куда рыть. Нужно что-то вроде этого: soffice -accept="socket,host=localhost,port=9303;urp;StarOffice.ServiceManager" ; ; Всем спасибо!

маленькая бяка - без иксов не стартанет :)

roller ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.