次のような情報を含むファイル(passwords_admin.txt)があります。
# This file is for storing administrative
# .passwords_user in the same directory.
#
# NOTE (Important):
# format: <server type> <keyword>[,<keyword>...] <server name> <login name> <password>
[<location> [<host> <port>] ]
# The first entry for a given server will be the default user.
# Current keywords:
# livepw - The password change script will change the sa password on this server to the
new live password
# devpw - The password change script will change the sa password on this server to the
new dev password
## mysql servers
##
# Do not remove the next line
# ----------- MySQL Instances start here ----------
mysql 1515,dev,devpw,online,ldap_pwd dev-exodus-01 dba_admin B66AF9 166.77.177.241 3306
mysql 1515,dev,devpw,online,ldap_pwd dev-exodus-01 dba_query 83939E 166.77.177.241 3306
mysql 1515,dev,devpw,online,ldap_pwd qa-exodus-01 dba_admin B66AF9 166.77.189.125 3306
mysql 1515,dev,devpw,online,ldap_pwd qa-exodus-01 dba_query 583939E 166.77.189.125 3306
...
...
データは次の形式で保存されます。format: <server type> <keyword>[,<keyword>...] <server name> <login name> <password> [<location> [<host> <port>] ]
ここで、特定のインスタンスのホスト名とキーワード(devpwまたはlivepw)をコピーして印刷します。
たとえば、たとえばdev-exodus-01です。166.77.177.241のホスト名とキーワードを出力したいdevpw
。または、これらの値を変数に格納して後で使用できる方法はありますか?
私はこれを試しましたが、明らかに機能していません。
$file = fopen("passwords_admin.txt", "r");
if (!$file) {
echo "<p>Unable to open remote file.\n";
exit;
}
while (!feof($file)) {
$line = fgets($file, 1024);
if (preg_match("@devpw(.*)@i", $line, $out)) {
$title = $out[1];
echo $title;
echo "<br/>";
}
}
助言がありますか ?