「定数」✕「三項演算子」

定数

defined('定数')=='★★' ? Yes処理 : No処理

 状態:-  閲覧数:2,571  投稿日:2013-04-20  更新日:2013-04-20  
コード例
	<?php defined('SITE_ID')=='PHP' ? display_term($array_w, 1) : display_term($array_w, 3) ?>


有りがちな間違い

 閲覧数:898 投稿日:2013-04-20 更新日:2013-04-20 

定数を''で括らない


defined(定数)==★★ ? Yes処理 : No処理
コード例
・この場合、常にflase
<?php defined(SITE_ID)=='PHP' ? echo "true" : echo "false" ?>



三項演算子理解不足


defined(定数==★★) ? Yes処理 : No処理
コード例
<?php defined('SITE_ID'=='PHP') ? display_term($array_w, 1) : display_term($array_w, 3) ?>

・これだと「'SITE_ID'=='PHP'」定数が定義されていたら、という意味になる
・何時の間にか条件式内容が変わっちゃってるし……


define と const の違い

_FILE__

コメント投稿(ログインが必要)



週間人気ページランキング / 9-3 → 9-9
順位 ページタイトル抜粋 アクセス数
1 ブラウザを閉じたらセッションデータはどうなるの? | セッション 5
2 PHPで定数を定義する方法は2種類ある / 配列定数の定義 4
3 ブラウザを閉じたらセッションデータはどうなるの? | セッション 3
3 コード例 … 「例外処理」はネストすることができる 3
4 http_build_queryとは? / 構文 /パラメータ 2
4 Fatal error: Uncaught Error: Call to a member function modify() on string | Fatal error(エラーメッセージ) 2
4 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in ○○.php on line △△ | Warning(エラーメッセージ) 2
4 ( ! ) Deprecated: implode(): Passing glue string after array is deprecated. Swap the parameters in ★★★ headless-chromium-php/vendor/wrench/wrench/lib/Wrench/Protocol/Protocol.php | エラーメッセージ 2
4 Parse error: syntax error, unexpected 'public' (T_PUBLIC) | Parse error(エラーメッセージ) 2
4 対応例1.メモリ不足なので、PHPの最大使用メモリを増加するよう変更 2
4 Fatal error: require_once(): Failed opening required 'PEAR.php' | Fatal error(エラーメッセージ) 2
4 or(||) | 演算子 2
4 preg_match第3引数 × 後方参照 2
4 定数 2
4 Fatal error: Using $this when not in object context in /○○.php on line △△ | Fatal error(エラーメッセージ) 2
5 _FILE__ | 定数 1
5 Fatal error: Access level to ▲::$△ must be protected (as in class ●) or weaker | Fatal error(エラーメッセージ) 1
5 PHPでcurlを使用するためには?/ 2.オプション設定 / curlでPOST送信 1
5 Warning: session_write_close(): Failed to write session data (user) | Warning(エラーメッセージ) 1
5 Maximum function nesting level of '256' reached | Fatal error(エラーメッセージ) 1
2025/9/10 1:01 更新