2010年02月17日 phpから外部プログラム(シェル)を実行した際の出力結果を全て取る system関数を使っていましたが、linuxでシェルを実行するのと、挙動が違ったので出力結果をすべて取りたいと思った時、shell_execを見つけました。 //使い方は以下そのまま $res = shell_exec('ls'); systemだと最終行しか取れなかったのですが、ちゃんとすべて取得できました。 説明によるとbacktick 演算子の別名らしいです。 「PHP」カテゴリの最新記事
PHPは、CGIのようにOSネイティブなプログラムを動作させる仕組みを備えている。 そこで今回は、Windowsのコマンドを使って、PHPが動作しているサーバのCPUの種類を表示させるプログラムを作ってみることにする。 PHPでOSネイティブなプログラムを走らせるのは簡単で、バッククォートでコマンドを囲むだけである。 バッククォートは演算子として作用し、戻り値は標準出力に返されるデータである。 ここでは Windows の set コマンドを使っており、環境変数の値がすべて変数 $output に格納する。そこから、 preg_match 関数を使い、Windows XPで標準設定される PROCESSOR_IDENTIFIER の値を取り出す。これが CPU の判定結果となる。 55: $output = `set`; //DOSコマンドを実行する 56: 57: $fl
Joel Spolsky: Joel on Software ソフト開発の方法論はいくつも提唱されているが、それが何で大切なのか、実施しないとなぜダメなのかがいまいちわからない。そして何よりつまらない。この本は、先の疑問に答えてくれるし、読んでいて面白い。いまだに根性論を唱えているBossにぜひとも読んでいただきたい本だ。 (★★★★★) PaulGraham/川合史郎: ハッカーと画家 プログラマの考えや行動は一般の人から見ると、奇妙で理解しがたく映るらしい。彼らはなぜそう考えそう動くのか、なぜ「常識で動く」ことをしないのか。 プログラマも、そうでない方も一度は読んでほしい。 (★★★★★) Tom DeMarco: Slack ゆとりの法則 ゆとりをなく ( 過度に最適化 ) してしまえば、組織は環境適応能力をなくしてしまい、長期的に見ると衰退する。それだけじゃなく、ゆとりをなくしてし
phpで外部プログラムを実行する関数は主に3つある。system関数、exec関数、passthru関数の3つ。 他にもproc_open関数などと便利なものもあるが、今回は置いておこう。 それぞれの違いは返り値にあるわけだが、実際にコードを実行して違いを見てみよう。 system関数 PHP: system - Manual http://jp.php.net/manual/ja/function.system.php $dump = system("ls"); var_dump($dump); test1.php test2.php test3.php string(8) "test3.php" system関数はコマンドの実行結果が文字列の形としてそのまま出力され、最後の行の文字列が返り値として返される。 exec関数 PHP: exec - Manual http://jp.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く