Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.03.05;
Скачать: [xml.tar.bz2];

Вниз

может ли PHP с OLE объектами работать?   Найти похожие ветки 

 
vidiv   (2004-02-12 09:03) [0]

%Subject%. Если да то как? в частности надо обработать документ Excel


 
McSimm   (2004-02-12 10:54) [1]

Может. Например
$obj = new COM("Excel.Application");
$obj->ActiveCell->Value = "test";
print $obj->ActiveCell->Text;
$obj->Release;


 
vidiv   (2004-02-13 12:49) [2]

Большое спасибо, только маленький вопросик:
что делает метод Release ?


 
ПИТОН   (2004-02-13 12:57) [3]


> vidiv © (13.02.04 12:49) [2]
> Большое спасибо, только маленький


Освобождает память, выделенную NEW


 
Style   (2004-02-13 13:07) [4]

ПИТОН
А на сколько я знаю, что в ООП PHP нет деструктора и нет необходимости освобождать память.
Скорее Release освобождает не память выделенную NEW, а память выделенную под COM объект.


 
ПИТОН   (2004-02-13 13:32) [5]


> Style © (13.02.04 13:07) [4]

А разве
$obj = new COM("Excel.Application");
выделяет память не под СОМ?


 
Style   (2004-02-13 13:49) [6]

ПИТОН
Ну как бы условно объяснить пояснить как я думаю:

class COM
{
function COM() - это ее конструктор
{
$Handle = AllocateComObj

здесь какая нить функция которая инициализирует ком объект и получает указатель.

}

function Release()
{
FreeObj($Handle)
}

}

Таким образом

new выделяет память для объекта $obj но не для COM, а
Release освобождает память не $obj объекта, а COM объекта
созданного в $obj.

Это мое предположение, и я могу ошибаться, просто в самом руководстве PHP написано
, что у объектов нет деструкторов.!

Я думаю это можно проверить:

$obj = new COM("Excel.Application");
$obj->ActiveCell->Value = "test";
print $obj->ActiveCell->Text;
$obj->Release;

// поидее объект $obj еще существует, просто можно вызвать конструктор COM объекта заново.

$obj->COM("Excel.Application");
$obj->ActiveCell->Value = "test";
print $obj->ActiveCell->Text;
$obj->Release;


 
ПИТОН   (2004-02-13 13:57) [7]


> Style © (13.02.04 13:49) [6]


Согласен.


 
kaif   (2004-02-13 18:23) [8]

Такой вопрос. Excel в этом случае ведь на хосте работает. То есть хостер должен быть виндовый, видимо? И иметь установленный там MS Office. Или речь идет о каком-то локальном применении PHP?


 
McSimm   (2004-02-13 18:32) [9]


> хостер должен быть виндовый, видимо? И иметь установленный
> там MS Office.

Разумеется.



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2004.03.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.007 c
1-12323
Batoon
2004-02-22 20:22
2004.03.05
ListBox


1-12336
OlimPer
2004-02-21 14:36
2004.03.05
Опять ShellLIstView


3-12266
Yurko
2004-02-06 11:30
2004.03.05
Помогите с запросом


14-12485
Manulo
2004-02-13 16:27
2004.03.05
Разыскивается


14-12515
SergP
2004-02-08 10:54
2004.03.05
Модем не понимает сигнала





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский