• ベストアンサー

PHP5で exit; や exit();と引数なしの場合、停止するの

PHP5で exit; や exit();と引数なしの場合、停止するのはわかりますがその他の振る舞いはどうなるのでしょうか? ネットで調べましたが引数なしの振る舞いは見つけられませんでした。 数値なら終了ステータスを返して停止 文字列なら表示して停止 引数なしなら??? あと、ネットで検索して思ったのですが、体裁は異なるが同じような内容のマニュアル解説がありますが、これは他のページを真似たものでしょうか? 解説が同じで、前に見たページといつも思います。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

参考資料1 http://d.hatena.ne.jp/over80/20100512/shell どの言語であれ、プログラムは基本的に、終了時、実行したシェルに対して、終了ステータスを返します。 正常終了した場合は「0」、異常終了等の場合は「0以外」ということのようです。 参考資料2 http://blog.suz-lab.com/2010/03/php.html PHPには、シェル等のコマンドを実行するためのsystem関数があります。 このsystem関数の第二引数に変数を与えると、終了ステータスが代入されます。 サンプルスクリプト err.php------------------ <?php exit(100); ?> execute.php-------------- <?php system("php err.php", $status); echo $status; ?> とした場合に、 >php execute.php を叩くと、「100」が表示されます。 マニュアルに関しては、マニュアルのHTMLを固めたアーカイブが公開されていますので、 それをダウンロードして自サイトに設置したのではないでしょうか。 それ以外の歴史的な背景とかはよくわかりません。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • exit exit(); 言語構造

    exitの使い方が良く分かりません。 >exit は言語構造です 言語構造って何ですか? >status を指定しない場合は括弧なしでコールできます と書いてありますが、 下の方の例2 // 正常終了 exit; exit(); exit(0); exit();ということは、 status を指定しない場合は括弧ありでもコールできる、 ということでしょうか? つまり、下記3つは、何れも同じ意味、ということでしょうか? exit; exit(); exit(0); また、「0 から 254 までの終了ステータスは表示されない」、とのことですが、 具体的にどうやって使うのでしょうか?(取得するのでしょうか?) メッセージを出力、と書かれているので、 終了ステータスに応じて、画面には表示させずに、メッセージをログなどに残せるのでしょうか? ▽PHP: exit - Manual   http://jp.php.net/manual/ja/function.exit.php

    • ベストアンサー
    • PHP
  •  %php stringcast.php 100

    <?php // stringcast.php if (!isset($argv[1])) { exit; } $num = $argv[1]; if ($num == 100) { echo "num is 100", PHP_EOL; } else { echo "num is not 100",PHP_EOL; } このプログラムを %php stringcast.php 100のように実行すると、引数の100は PHPには文字列型として渡されます。・・・  以上参考書にあります。  作業の流れが分かりません。  %php stringcast.php 100とは!何のことなのでしょうか!?  以上宜しくお願いします。

    • ベストアンサー
    • PHP
  • mb_decode_numericentity引数

    10進数数値文字参照を文字列に変換したいです。 (「変… こういうヤツを日本語にしたい) mb_decode_numericentity第2引数に >convmap は変換するコード領域を指定する配列です とあるのですが、これはどうやって指定するのでしょうか? PHP: mb_decode_numericentity - Manual http://jp2.php.net/mb_decode_numericentit 下の方に $convmap = array (0x0, 0xffff, 0, 0xffff); $output = mb_decode_numericentity($intput, $convmap, 'UTF-8'); と書かれているのですが、「0x0, 0xffff, 0, 0xffff」の意味が分かりません。 「10進数数値文字」を変換したい時は、ここをどう書けば良いのでしょうか?

    • ベストアンサー
    • PHP
  • setcookie に失敗した場合(PHP)

    PHP 4.3.11 を使っています。 Aのページから渡ってきたデータをBのページで setcookie で保存しようとしています。 セットする文字列(5000バイトくらい)が長かった場合に IE(6.0)とFirefox(1.5)と挙動が異なるのです。 ・IE→ 文字列を上限までセットしBのページを表示 ・Firefox→ Bのページにリクエストを投げるものの、Aのページがそのまま出た状態(ステータスがすぐに「完了」となる) 最低限、Firefox でも、Bのページを出すようにしたいのですが、 setcookie に失敗した場合にBのページが表示されないのはFirefoxの仕様なのでしょうか? どうぞよろしくお願いいたします。。。

    • 締切済み
    • PHP
  • PHPのfopen関数について質問です。

    PHPマニュアル http://www.php.net/manual/ja/function.fopen.php 上記ページの >> Windows ベースのシステムでは \r\n を使用します。 マッキントッシュベースのシステムでは \r を使用します。 間違った改行コードでファイルに書き込むと、 他のアプリケーション上でそのファイルを開いた際に変な風に見えてしまいます。 Windows上では、\nを\r\nに透過的に変換する text-mode変換フラグ('t')が提供されます。 それに対し、'b'を使って強制的にバイナリモードにすることもできます。 その場合データの変換はされません。 このフラグを使用するには、'b' または 't'を mode引数の最後に追加してください。 とある様にPHPにおいてfopen関数の第二引数のモードに付加する場合のバイナリモードとは windows系プラットフォームにおいて書き込む文字列内に[¥n]というバイトがあった場合、プラットフォームにあわせて 自動的に書き出す際に¥r¥nに変換されるから・・・・。 という意味ですよね。 例えば、あるバイナリファイルに奇跡的に[¥n]というバイトがなかった場合、fopen("test.jpg","rw");でもよいということですよね?

    • ベストアンサー
    • PHP
  • 関数の引数のデフォルト値について

    PHP5.2.4を使用しています。 自作関数で、例えば数値や文字列を受け取る引数のデフォルト値を 「''」で入力されてないかをチェックする場合と、 「NULL」で入力されてないかをチェックする場合とでは、 どちらが良いというのはあるのでしょうか? function a($arg = '') {  if($arg == '')  {  } } //または function a($arg = NULL) {  if(is_null($arg))  {  } }

    • ベストアンサー
    • PHP
  • phpのマニュアルの質問です。

    phpのマニュアルの見方がいまいち分かりません。 http://www.php.net/manual/ja/function.fopen.php resource fopen ( string $filename , string $mode [, bool $use_include_path = false [, resource $context ]] ) 上記の例ですと、 ◎「string」「bool」これはどういう意味でしょうか?続くのが必ず変数なのはなぜでしょうか? ◎関数の中の引数の[ ]大カッコは何を意味してるでしょうか? 初歩的な質問ですが教えてください。

    • ベストアンサー
    • PHP
  • PHPの構文、返り値がintの意味

    初学者です。 入門用テキストや、PHPの公式サイトを参照すると 以下のような解説があります。例えば printf関数について見てみると以下のような事が他の関数等を調べても出てきます。あまり気にしていいなかったのですがそういう訳にも行きません。 printf ( string $format , mixed ...$values ) : int この場合、string は「文字列」、$formatは「書式文字列」, mixedは型は「数値、文字列、浮動小数点など何でもいい」, ...$values引数の値 という解釈でいいのでしょうか? int printf( string $format [, mixed $args [, ・・・]]) こちらも同じ意味かと思います。 またHP公式サイト、入門用テキストの両方とも int がついています。これは戻り値(返り値)のことかと思います。 自分の中では「 (int) (integer). 整数型への変換」としか解釈出来ません。しかし、下に記述しているPHPでは返ってくるのは文字列、浮動小数点です。色々ウェブサイトを探していると、「[1]を表す」というようなのを見かけたのですが何のことかわかりません。 上記「int」について初心者でもわかるように教えていただけないでしょうか? よろしくお願いいたします <引用> printf — フォーマット済みの文字列を出力する (PHP 4, PHP 5, PHP 7, PHP 8) printf ( string $format , mixed ...$values ) : int (PHP公式) https://www.php.net/manual/ja/function.printf.php 構文 printf関数 int printf( string $format [, mixed $args [, ・・・]]) (独習PHP第3版) ----------------------- <記述> <?php printf('%sは%sです。','きなこ','ハムスター'); echo "<br>\n"; printf("売上平均(前月比): %+0-8.3f", 0.198765); ?> <表示結果> きなこはハムスターです。 売上平均(前月比): +0.19900

    • ベストアンサー
    • PHP
  • phpマニュアルの検索機能が機能しない件

    ど素人がphpを勉強中です。 関数の意味を調べたい時、 http://www.php.net/manual/ja/indexes.php 上記、関数マニュアル一覧から、Ctrl+Fの検索で、例えば『implode』で検索してみても、 http://php.net/manual/ja/function.implode.php このページが見つかりません。 わざわざGoogleから検索しないと出てきません。 とても不便です。 どうしたらいいでしょうか?

    • ベストアンサー
    • PHP
  • PHPの言語仕様について

    PHPのマニュアルを読んでいるのですが、以下の項目について説明が見つけられないでいます。 「()」や「{}」についての仕様が明記されていないようなのです。 他の言語では「()」は演算子の一つだったり、セパレーターの一つだったりしますが、PHPのマニュアルを私が読んだ限りではそのどちらとしても記述がありません。 また、「{}」については、rubyなどでいうブロックを形成するものではなく、if文やfor分で複文を実行するときにのみ使用される、ということのようですが、これ以上詳細な説明が見つけられませんでした。 PHPの言語仕様としては、マニュアルの他にドキュメントが有るのでしょうか? もしくはソースを読む必要があるのでしょうか? ※私が読んでいるのは日本語版のマニュアルです  http://www.php.net/manual/ja/index.php タイトル修正して質問しなおしました

    • 締切済み
    • PHP