Налаштування під час виконання

Поведінка цих функцій залежить від установок у php.ini.

Опції конфігурації Com

ИмяПо умолчаниюМесто измененияСписок изменений
com.allow_dcom"0"INI_SYSTEM
com.autoregister_typelib"0"INI_ALL
com.autoregister_verbose"0"INI_ALL
com.autoregister_casesensitive"1"INI_ALL
com.code_page""INI_ALL
com.dotnet_version""INI_SYSTEMПочинаючи з PHP 8.0.0
com.typelib_file""INI_SYSTEM

Додаткова інформація та опис режимів INI_* дано у розділі «Місця встановлення параметрів конфігурації».

Коротке пояснення конфігураційних директив.

com.allow_dcom

Якщо увімкнено, PHP буде дозволено працювати як клієнт D-COM (Розподілений COM), що дозволить скрипту PHP інстанціювати об'єкти COM на віддаленому сервері.

com.autoregister_typelib

Якщо увімкнено, PHP спробує зареєструвати константи бібліотеки типів створюваних об'єктів. COMякщо ці об'єкти реалізують інтерфейс, необхідний для отримання даної інформації. Регістрозалежність констант, що реєструються, контролюється директивою конфігурації php.ini com.autoregister_casesensitive

com.autoregister_verbose

Якщо увімкнено, про будь-які проблеми із завантаженням бібліотеки типів у процесі створення екземпляра об'єкта буде повідомлено за допомогою механізму помилок PHP. За промовчанням вимкнено, що означає, що жодних повідомлень про помилки при завантаженні бібліотеки типів не повідомлятиметься.

com.autoregister_casesensitive

Якщо увімкнено (за замовчуванням), константи, виявлені при автозавантаженні бібліотек типів, при інстанціюванні об'єктів COM, будуть зареєстровані як реєстрозалежні. Детальніше дивіться в описі функції com_load_typelib()

com.code_page

Контролює кодування за умовчанням під час передачі рядків об'єктам COM. Якщо вказано порожній рядок, PHP буде вважати, що ви хочете використовувати CP_ACP - Системне кодування ANSI за замовчуванням.

Якщо текст у вашому скрипті міститься у кодуванні відмінному від кодування за замовчуванням, то встановлення цього параметра дозволить вам не вказувати кодування кожного разу під час створення об'єкта класу com у його конструкторі. Будь ласка, пам'ятайте, що використання цієї директиви (як і будь-якої іншої директиви конфігурації) робить ваш скрипт менш переносимим, так що все ж таки рекомендується вказувати кодування при кожному створенні об'єкта COM.

com.dotnet_version

Версія платформи .NET для використання з об'єктами dotnet. Значення параметра - це перші три частини номера версії фреймворку, розділені точками та з префіксом v, наПрикладv4.0.30319

com.typelib_file

Значення повинно відповідати шляху файлової системи до файлу, що містить список бібліотек типів, які необхідно завантажити під час запуску. Кожен рядок файлу буде розглядатися як ім'я бібліотеки типів, яка буде завантажена, як тільки ви викличете функцію com_load_typelib(). Константи будуть зареєстровані на постійній основі, тому бібліотеки потрібно завантажувати лише один раз. Якщо ім'я бібліотеки типів закінчується на рядок #cisили#case_insensitive, то константи будуть зареєстровані як реєстронезалежні.