php - 具有与 SQL Server 的 Laravel 连接的 Azure Web 应用程序

标签 php laravel azure

我有一个 Azure 免费试用帐户。 这是我在 Azure 门户中拥有的内容(当然,此列表中的所有内容都是 Azure 资源):

  • PHP Web 应用,安装了可用的 Laravel 框架
  • 网络应用已连接(并自行更新)到 Bitbucket 存储库
  • SQL 数据库(以及相关的 SQL 服务器)

现在的问题是,如何将 Laravel Web 应用程序与 SQL 数据库连接起来?

其他重要细节:

  1. 在解决方案中,我希望坚持免费计划(因此,请不要涉及更改 Azure 计划的解决方案);
  2. 我尝试在本地进行连接(来 self 在线获取的示例代码),但由于此错误而无法进行:

PHP fatal error :未捕获错误:调用未定义的函数 sqlsrv_connect()

我发现这个错误是因为我没有this驱动程序安装在本地。我什至没有尝试安装它,因为我的“真正用途”将来自 Azure 上的 Laravel 网站。

<小时/>
<?php
    $serverName = "****.database.windows.net";
    $connectionOptions = array(
        "Database" => "****",
        "Uid" => "admin-****",
        "PWD" => "#####"
    );

    //Establishes the connection
    $conn = sqlsrv_connect($serverName, $connectionOptions);
    $tsql= "SELECT TOP 20 pc.Name as CategoryName, p.name as ProductName
            FROM [SalesLT].[ProductCategory] pc
            JOIN [SalesLT].[Product] p
        ON pc.productcategoryid = p.productcategoryid";
    $getResults= sqlsrv_query($conn, $tsql);

    echo ("Reading data from table" . PHP_EOL);
    if ($getResults == FALSE)
        echo (sqlsrv_errors());
    while ($row = sqlsrv_fetch_array($getResults, SQLSRV_FETCH_ASSOC)) {
        echo ($row['CategoryName'] . " " . $row['ProductName'] . PHP_EOL);
    }
    sqlsrv_free_stmt($getResults);
?>

最佳答案

我不知道你为什么在 laravel 中使用这段代码。

对于 Sql Server Connection laravel 提供的驱动程序,请根据您的情况使用它:

在配置文件夹>数据库文件中编辑这些:

  1. 'default' => env('DB_CONNECTION', 'mysql'),

    '默认'=>'sqlsrv',

    如果您不想使用环境文件变量,请更新环境变量 反射(reflect)同样的情况。

  2. 更新此驱动程序值: '连接' => [ 'sqlsrv' => [,

有关在 azure 上部署 Laravel 应用程序的更多帮助,请检查:https://medium.com/@coderonfleek/hosting-a-laravel-application-on-azure-web-app-b55e12514c46

关于php - 具有与 SQL Server 的 Laravel 连接的 Azure Web 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52640299/

相关文章:

php - 管理数据库表的理想方式。用户用于 future 的发展?

php - 从下拉列表中获取数据在 laravel 中显示错误

azure - Azure 中的部署脚本 ARM 模板

azure - Windows Azure 部署保留旧版本的 Silverlight 应用程序

azure - 通配符 SSL 证书 Azure 网站。兼容的?

php - Mysqli 用 concat 添加数值?

php - 我可以强制子类使用父类的构造函数吗?

php - 如何使 Laravel 的验证器 $rules 可选?

Laravel - 调用 Artisan 命令并等待结果

sql - 连接被拒绝:Laravel