如何在 Azure Lunix 应用服务提供的 PHP 代码中使用 Mysql 连接字符串

我正在尝试将 Wordpress 托管到 Azure lunix 应用服务。

我为 MySQL 创建了一个 Azure 数据库,然后从连接字符串屏幕中获取了 Web 应用程序连接字符串。

http://img3.mukewang.com/60b98fd80001218b11220436.jpg

连接字符串格式为

Database={your_database}; Data Source={data_source}; User Id= {user_id}; Password={your_password}

然后我创建了一个基于 Linux 的应用服务并将 MySQL 连接字符串添加到其配置中。

http://img4.mukewang.com/60b98fe50001e97510970318.jpg

然后我使用此代码wp-config.php从 PHP 环境变量中获取数据库连接字符串MYSQLCONNSTR_bridgesConnection


<?php


$connectstr_dbhost = '';

$connectstr_dbname = '';

$connectstr_dbusername = '';

$connectstr_dbpassword = '';


foreach ($_SERVER as $key => $value) {

    echo $key ;

 if (strpos($key, "MYSQLCONNSTR_bridgesConnection") !== 0) {

 continue;

 }



 $connectstr_dbhost = preg_replace("/^.*Data Source=(.+?);.*$/", "\\1", $value);

 $connectstr_dbname = preg_replace("/^.*Database=(.+?);.*$/", "\\1", $value);

 $connectstr_dbusername = preg_replace("/^.*User Id=(.+?);.*$/", "\\1", $value);

 $connectstr_dbpassword = preg_replace("/^.*Password=(.+?)$/", "\\1", $value);

}

如果您使用的是 Windows 应用程序服务,则该代码有效。但是如果您使用的是 Linux App 服务,您将收到此警告并且 wordpress 将无法工作


警告:mysqli_real_connect():(HY000/2002):第 1452 行的 /wordpress/wp-includes/wp-db.php 中没有这样的文件或目录


我使用此代码创建了一个 php 信息页面


<?php

phpinfo();

?>

我确定 PHP 环境变量已加载,但我需要一种方法来访问它。

http://img1.mukewang.com/60b98ff40001e09c09350293.jpg

如何在 PHP 代码中访问该连接字符串?


慕仙森
浏览 140回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP