人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPのコードについて教えてください。

http://aki.adam.ne.jp/php/gdthumb/download.php
↑こちらのサイトから「GD自動サムネイル作成」というプログラムをダウンロードさせていただいて、GDの使い方を勉強していたのですが、115行目、116行目に下記の処理があります。

$imagecreate = function_exists("imagecreatetruecolor") ? "imagecreatetruecolor" : "imagecreate";
$imageresize = function_exists("imagecopyresampled") ? "imagecopyresampled" : "imagecopyresized";

これらの行はどういった処理をしているのでしょうか。「?」と「:」が何なのかが分からず理解できませんでした。マニュアルの該当ページのURLをお教えいただくだけでも結構です。

本来は作者の方にお伺いするべきだとは思うのですが、おそらく聞いている内容はこのプログラム特有のものではなく、一般的なPHPのプログラムの問題だと思いますのでこちらで質問させていただきました。

以上、よろしくお願いいたします。

●質問者: n_maco2
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:Gd PHP URL コード サイト
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● ootatmt
●35ポイント ベストアンサー

http://php.dori-mu.net/syntax.html#3kou

3項演算子です。

式1 ? 式2 : 式3

式1が真なら式2が評価され、偽なら式3が評価されます。

print $boolean ? "true" : "false" ;

$booleanが真なら「true」、偽なら「false」と表示されます。

◎質問者からの返答

ご回答ありがとうございます。

おー、こんな書き方があったんですね。if・elseより全然スマートですね。

ありがとうございました


2 ● k6nch6n
●35ポイント

1行目。function_exists("imagecopyresampled")がtrueのときは$imagecreateに"imagecreatetruecolor"を代入。falseのときには"imagecreate"を代入。

2行目も同様です。

◎質問者からの返答

ご回答ありがとうございました。

スマートなやり方ですね

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ