PHP のコアで定義されている定数 (の一部) と Python で同等の値を得るための表記の対応表を作ってみました。
間違っている箇所がありましたらコメントでご指摘ください。
マジック定数
PHP |
Python |
__LINE__ |
- |
__FILE__ |
__file__ |
__FUNCTION__ |
- |
__CLASS__ |
self.__class__ *1 |
__METHOD__ |
- |
C に由来する __LINE__ 相当のものが Python には無いのですが、Traceback が良くできているので __FUNCTION__, __METHOD__ ともども必要になることはかなり少ないと思われます。ちなみに Google で検索すると Python で __LINE__ を実現された方もおられるようです。
システム情報
PHP |
Python |
PHP_VERSION |
sys.version_info *2 |
PHP_OS |
sys.platform |
PHP_SAPI |
- |
PHP_EOL |
os.linesep |
DIRECTORY_SEPARATOR |
os.path.sep |
PATH_SEPARATOR |
os.path.pathsep |
PHP_INT_MAX |
sys.maxint |
PHP_INT_SIZE |
- |
- |
sys.maxunicode |
- |
sys.byteorder |
DEFAULT_INCLUDE_PATH |
sys.path *3 |
標準入出力
PHP |
Python |
STDIN |
sys.stdin |
STDOUT |
sys.stdout |
STDERR |
sys.stderr |
数学関連
PHP |
Python |
M_E |
math.e |
M_LOG2E |
math.log(math.e, 2) |
M_LOG10E |
math.log10(math.e) |
M_LN2 |
math.log(2) |
M_LN10 |
math.log(10) |
M_PI |
math.pi |
M_PI_2 |
math.pi / 2 |
M_PI_4 |
math.pi / 4 |
M_1_PI |
1 / math.pi |
M_2_PI |
2 / math.pi |
M_2_SQRTPI |
2 / math.sqrt(math.pi) |
M_SQRT2 |
math.sqrt(2) |
M_SQRT1_2 |
math.sqrt(0.5) |
おまけ1: argc/argv
PHP |
Python |
$_SERVER['argc'] or $argc |
len(sys.argv) |
$_SERVER['argv'] or $argv |
sys.argv |
PHP |
Python |
getenv('key') or $_ENV['key'] |
os.getenv('key') |
putenv('key', 'value') |
os.putenv('key', 'value') |