If you are trying to get the properties of a Word document opened via COM object, you may need to define some constants in your script like so.
<?php
define('wdPropertyTitle', 1);
define('wdPropertySubject', 2);
define('wdPropertyAuthor', 3);
define('wdPropertyKeywords', 4);
define('wdPropertyComments', 5);
define('wdPropertyTemplate', 6);
define('wdPropertyLastAuthor', 7);
$word = new COM("word.application") or die ("Could not initialise MS Word object.");
$word->Documents->Open(realpath("Sample.doc"));
$Author = $word->ActiveDocument->BuiltInDocumentProperties(wdPropertyAuthor);
echo $Author;
?>COM
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
COM
Референца за `book.com.php` со подобрена типографија и навигација.
COM и .Net (Windows)
Вовед
COM е акроним за Component Object Model; тоа е слој ориентиран кон објекти (и поврзани услуги) над DCE RPC (отворен стандард) и дефинира заедничка конвенција за повикување што овозможува код напишан на кој било јазик да повикува и да работи заедно со код напишан на кој било друг јазик (под услов тие јазици да се свесни за COM). Не само што кодот може да биде напишан на кој било јазик, туку не мора ниту да биде дел од истиот извршен; кодот може да се вчита од DLL, да се најде во друг процес што работи на истата машина, или, со DCOM (Distributed COM), да се најде во друг процес на оддалечена машина, сето тоа без вашиот код дури и да треба да знае каде се наоѓа компонентата.
Постои подмножество на COM познато како OLE Automation кое се состои од сет на COM интерфејси кои дозволуваат лабаво поврзување со COM објекти, така што тие можат да бидат интроспектирани и повикани во време на извршување без знаење во време на компајлирање за тоа како работи објектот. PHP COM екстензијата ги користи OLE Automation интерфејсите за да ви овозможи да креирате и повикувате компатибилни објекти од вашите скрипти. Технички кажано, ова навистина треба да се нарече "OLE Automation Extension for PHP", бидејќи не сите COM објекти се компатибилни со OLE.
Сега, зошто би или треба да користите COM? COM е еден од главните начини за спојување апликации и компоненти на платформата Windows; користејќи COM можете да стартувате Microsoft Word, да пополните шаблон за документ и да го зачувате резултатот како Word документ и да го испратите до посетителот на вашата веб-страница. Можете исто така да користите COM за извршување административни задачи за вашата мрежа и за конфигурирање на вашиот IIS; ова се само најчестите употреби; можете да направите многу повеќе со COM.
Дополнително, ја поддржуваме инстанцијацијата и креирањето на .Net склопови користејќи го COM слојот за интероперабилност обезбеден од Microsoft.
- Installing/Configuring
- Претходно дефинирани константи
- Грешки и ракување со грешки
- Примери
- com — Класата com
- com::__construct — COM конструктор на класа
- dotnet — Класата dotnet
- dotnet::__construct — dotnet конструктор на класа
- variant — Класата variant
- variant::__construct — variant конструктор на класа
- COMPersistHelper — Класата COMPersistHelper
- COMPersistHelper::__construct — Конструирај COMPersistHelper објект
- COMPersistHelper::GetCurFileName — Земи тековно име на датотека
- COMPersistHelper::GetMaxStreamSize — Земи максимална големина на стрим
- COMPersistHelper::InitNew — Иницијализирај објект во стандардна состојба
- COMPersistHelper::LoadFromFile — Вчитај објект од датотека
- COMPersistHelper::LoadFromStream — Вчитај објект од стрим
- COMPersistHelper::SaveToFile — Зачувај објект во датотека
- COMPersistHelper::SaveToStream — Зачувај објект во стрим
- com_exception — Класата com_exception
- com_safearray_proxy — Класата com_safearray_proxy
- COM Функции
- com_create_guid — Генерирај глобално уникатен идентификатор (GUID)
- com_event_sink — Поврзи настани од COM објект до PHP објект
- com_get_active_object — Враќа рачка до веќе стартувана инстанца на COM објект
- com_load_typelib — Вчитува Typelib
- com_message_pump — Обработува COM пораки, спиејќи до timeoutms милисекунди
- com_print_typeinfo — Печати PHP дефиниција на класа за интерфејс што може да се диспечира
- variant_abs — Враќа апсолутна вредност на варијанта
- variant_add — „Собира“ две вредности на варијанти и го враќа резултатот
- variant_and — Извршува бинарна операција И помеѓу две варијанти
- variant_cast — Конвертира варијанта во нов варијанта објект од друг тип
- variant_cat — Ги спојува двете вредности на варијанти и го враќа резултатот
- variant_cmp — Споредува две варијанти
- variant_date_from_timestamp — Враќа претстава на варијанта датум од Unix временски печат
- variant_date_to_timestamp — Конвертира вредност на варијанта датум/време во Unix временски печат
- variant_div — Враќа резултат од делење на две варијанти
- variant_eqv — Извршува бинарна еквивалентност на две варијанти
- variant_fix — Враќа целоброен дел од варијанта
- variant_get_type — Враќа тип на варијанта објект
- variant_idiv — Конвертира варијанти во цели броеви и потоа го враќа резултатот од нивното делење
- variant_imp — Извршува бинарна импликација на две варијанти
- variant_int — Враќа целоброен дел од варијанта
- variant_mod — Дели два варианти и го враќа само остатокот
- variant_mul — Ги множи вредностите на двата варианти
- variant_neg — Извршува логичка негација на варијанта
- variant_not — Извршува битна негација на варијанта
- variant_or — Извршува логичка дизјункција на два варианти
- variant_pow — Го враќа резултатот од извршувањето на функцијата степен со два варианти
- variant_round — Го заокружува варијантата на наведениот број на децимални места
- variant_set — Доделува нова вредност за варијанта објект
- variant_set_type — Конвертира варијанта во друг тип „на место“
- variant_sub — Ја одзема вредноста на десниот варијанта од вредноста на левиот варијанта
- variant_xor — Извршува логичка ексклузија на два варианти