2009-07-22 2 views
1

Я унаследовал код, который использует метод sqlsrv_connect для создания соединения с базой данных SQL Server. Моя персональная машина для разработки - это OS X box, в которой я запускаю apache PHP. У меня есть экземпляр SQL Server, работающий на виртуальной машине.Использование sqlsrv_connect на платформах, отличных от Windows

Когда я пытаюсь подключиться к базе данных, я получаю следующую ошибку.

Fatal error: Call to undefined function sqlsrv_connect() in ... 

Оказывается, что sqlsrv_connect не является частью стандартной PHP и является частью драйвера, который поставляется с SQL Server 2005. (пожалуйста, поправьте меня, если я ошибаюсь здесь)

Есть ли способ использовать эту функцию на платформах, отличных от Windows? Я понимаю, что могу установить/создать экземпляр Apache/PHP на моей машине Windows, но если есть способ заставить эту функцию работать с OS X (или другими * nixes), я бы предпочел это.

ответ

5

не представляется возможным. SQL Native Driver для PHP является Windows only product:

Драйвер SQL Server для PHP использует на Microsoft SQL Server 2005 ODBC Driver обрабатывать связь низкого уровня с SQL Server. Как результат , драйвер SQL Server для PHP поддерживается только в Windows.

2

Здесь вы можете найти tutorial о том, как установить расширение. (Через Google)

Я не слишком знакомый с расширением, но этот источник должен быть в состоянии помочь вам.

(Обновлено Ссылка на лучший источник, по-прежнему с помощью Google)

+0

+1 для получения полезной информации, но я хочу установить драйвер на OS X (или ему сказали, что это невозможно для кого-то с полномочиями по этому вопросу). –

0

Драйвер SQL Server для PHP (из MS) доступен только в Windows. Если вы не хотите каких-либо конкретных функций, предлагаемых этим драйвером/API, вы можете использовать модуль PHP ODBC вместе с драйвером UnixODBC/iODBC или FreeTDS (ODBC или db-lib)

Смежные вопросы