Installation PHP basée sur Linux se connectant à MsSQL Server

Quel est le meilleur moyen de se connecter via PHP sur une machine Linux à un server Microsoft SQL Server distant?

Le PHP ne fonctionnera que sur une machine Linux.

J'ai navigué pour la réponse la plus simple depuis un moment maintenant.

vous devez installer le pilote mssql pour php sur linux.
C'est un meilleur tutoriel pour vous.

Essayez: Pour Ubuntu

sudo apt-get install php5-sybase php5-odbc freetds-common 

Editez freetds.conf puis connectez le server MSSQL avec ce PHP.

Php 5,6

Ubuntu

 sudo apt-get install php5.6-sybase freetds-common libsybdb5 

AWS / Centos / Redhat

 sudo yum install php56-mssql 

Après cela, vous pouvez vous connecter à la database MsSql via PHP avec quelque chose comme ceci:

 <?php $server = 'localhost'; $user = 'someUser'; $pass = 'somePassword'; $database = 'theDatabaseName'; try { $pdo = new \PDO( sprintf( "dblib:host=%s;dbname=%s", $server, $database ), $user, $pass ); $pdo->setAtsortingbute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { echo "There was a problem connecting. " . $e->getMessage(); } $query = "SELECT * FROM TestSchema.Employees"; $statement = $pdo->prepare($query); $statement->execute(); $results = $statement->fetchAll(PDO::FETCH_ASSOC); var_dump($results); 

Vous pouvez résoudre MsSQL avec quelque chose comme ceci sur la command line:

 tsql -H your.server.name -p 1433 -U yourusername -P yourpassword -D yourdatabasename 

Php 7+

Microsoft a des pilotes natifs que nous pouvons utiliser. Les instructions complètes sont ici (Redhat / Ubuntu / Others) .

Ce lien contient également les étapes requirejses pour installer le server Ms SQL sur votre machine de développement (travailler sur Ubuntu, ne fonctionne pas sur AWS, mais vous pouvez simplement lancer une instance RDS ici). Il contient également des instructions de base sur la création de tables de test et de données dans la database, ainsi que du code de connectivité PHP.

Après avoir cherché et essayé les nombreuses suggestions ici et dans d'autres messages, et passé beaucoup de time, un collègue a suggéré d'essayer ADO.

Comme nous avions déjà une installation PHP avec ADO, il a littéralement fallu less de 10 minutes pour démarrer.

Si vous êtes sérieux au sujet de la connection de Linux PHP à MS-SQL, considérez ADO.

Obtenir l'extension sqlsrv à partir de microsoft pour php http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx