2017-08-19 3 views
0

現在ログインしているシステムのユーザ名をPHPまたはJavaScriptで取得する方法を教えてください。PHPまたはJavascriptでシステムのユーザ名を取得

我々は、次のようなJavaで機能が組み込まれています:

String userName = System.getProperty("user.name"); 

が、私は私が必要とする技術のいずれかに類似したコマンドを見つけることができませんでした。

私はWebアプリケーション、HTML、CSS、ブートストラップ、Ajax、Jquery、Datatables、PHP、MS SQLのために以下のテクノロジー/ライブラリを使用しています。

前述のいずれかの方法でシステムのユーザー名を見つける方法はありますか。

+0

"現在ログに記録されているシステムのユーザー名"とは、Apacheの実行中のユーザーを意味しますか? – ryantxr

+0

@ryantxrいいえ管理者IDなどのシステムにログインした人など、現在のシステムユーザ。 –

+0

なぜ知りたいですか?誰もログインしていない場合、または複数の人がいる場合はどうなりますか? –

答えて

0

以下は、PHPプロセスを実行しているユーザーを示しています。たとえば、Apacheを実行している場合は、Apacheプロセスを所有しているユーザーが表示されます。コマンドラインから実行すると、ログインした人のユーザー名が表示されます。

あなたは、Apache(または任意のWebサーバ)を介してこれを実行し、そのWebサーバがコンピュータに _wwwユーザーとして実行されている、あなたがユーザージッピーとしてログインしている場合、これらは、あなたに _www をしませ返します。 ジッピー。 LinuxまたはMacOSで

$processUser = exec('whoami'); 

または:

$userInfo = posix_getpwuid(posix_geteuid()); 
$processUser = $userInfo['name']; 

また、それが環境を通じて利用可能であるかどうかを確認しようとすることができます。

$user = $_ENV['USERNAME'] ?? '-unknown'; 

私は、一例として、次のJavaを使用:

public class Main { 
    public static void main(String[] args) { 
     String username = System.getProperty("user.name"); 
     System.out.println("username = " + username); 
    } 
} 

は、それから私は、次のPHPを使用:

<?php 
echo `whoami`; 
echo "\n"; 

は、それから私は、コマンドラインで実行し、まったく同じ出力を得ました。 MacOSのとLinuxの

、これはあなたに現在ログインしているすべてのユーザーのリストが表示されます:

<?php 
$users = exec('/usr/bin/users', $output); 
print_r($output); 

this Oracle Java docはSystem.getProperty(「user.name」)によると、あなたは、「ユーザーアカウント名」を与えます。 Webサーバー環境では、JavaまたはWebサーバープロセスを実行しているユーザーの名前が表示されます。

あなたが使用しているものがWindows上で動作することは完全にはわかりません。

+0

レスポンスありがとうございますが、エコーの結果が異なっています。String userName = System.getProperty( "user.name");他の方法はありますか? –

+1

ログインしたユーザーとして他のコードを実行している場合は、おそらく別の回答が得られます。 CLIを使ってPHPを実行すると、ウェブブラウザから実行すると 'nigel'が得られます。' www-data'を取得します。 –

0
<?php echo get_current_user(); ?> 
<?php echo getenv("username"); ?> 

詳細については、phpinfo()を参照してください。 LinuxとWindowsの両方で動作します。

+0

レスポンスありがとうございますが、エコーの結果は異なっています。String userName = System.getProperty( "user.name"); –

+0

JavaおよびPHPでこれらの値はどのようになっていますか? – rndus2r

関連する問題