3v4l.org

run code in 300+ PHP versions simultaneously
<?php for ( $i = 0; $i < 1024; $i++ ) { $name = token_name($i); if ( $name == 'UNKNOWN' ) continue; printf("%s => %s\n", $i, token_name($i)); }
Output for 8.5.0
260 => T_LNUMBER 261 => T_DNUMBER 262 => T_STRING 263 => T_NAME_FULLY_QUALIFIED 264 => T_NAME_RELATIVE 265 => T_NAME_QUALIFIED 266 => T_VARIABLE 267 => T_INLINE_HTML 268 => T_ENCAPSED_AND_WHITESPACE 269 => T_CONSTANT_ENCAPSED_STRING 270 => T_STRING_VARNAME 271 => T_NUM_STRING 272 => T_INCLUDE 273 => T_INCLUDE_ONCE 274 => T_EVAL 275 => T_REQUIRE 276 => T_REQUIRE_ONCE 277 => T_LOGICAL_OR 278 => T_LOGICAL_XOR 279 => T_LOGICAL_AND 280 => T_PRINT 281 => T_YIELD 282 => T_YIELD_FROM 283 => T_INSTANCEOF 284 => T_NEW 285 => T_CLONE 286 => T_EXIT 287 => T_IF 288 => T_ELSEIF 289 => T_ELSE 290 => T_ENDIF 291 => T_ECHO 292 => T_DO 293 => T_WHILE 294 => T_ENDWHILE 295 => T_FOR 296 => T_ENDFOR 297 => T_FOREACH 298 => T_ENDFOREACH 299 => T_DECLARE 300 => T_ENDDECLARE 301 => T_AS 302 => T_SWITCH 303 => T_ENDSWITCH 304 => T_CASE 305 => T_DEFAULT 306 => T_MATCH 307 => T_BREAK 308 => T_CONTINUE 309 => T_GOTO 310 => T_FUNCTION 311 => T_FN 312 => T_CONST 313 => T_RETURN 314 => T_TRY 315 => T_CATCH 316 => T_FINALLY 317 => T_THROW 318 => T_USE 319 => T_INSTEADOF 320 => T_GLOBAL 321 => T_STATIC 322 => T_ABSTRACT 323 => T_FINAL 324 => T_PRIVATE 325 => T_PROTECTED 326 => T_PUBLIC 327 => T_PRIVATE_SET 328 => T_PROTECTED_SET 329 => T_PUBLIC_SET 330 => T_READONLY 331 => T_VAR 332 => T_UNSET 333 => T_ISSET 334 => T_EMPTY 335 => T_HALT_COMPILER 336 => T_CLASS 337 => T_TRAIT 338 => T_INTERFACE 339 => T_ENUM 340 => T_EXTENDS 341 => T_IMPLEMENTS 342 => T_NAMESPACE 343 => T_LIST 344 => T_ARRAY 345 => T_CALLABLE 346 => T_LINE 347 => T_FILE 348 => T_DIR 349 => T_CLASS_C 350 => T_TRAIT_C 351 => T_METHOD_C 352 => T_FUNC_C 353 => T_PROPERTY_C 354 => T_NS_C 355 => T_ATTRIBUTE 356 => T_PLUS_EQUAL 357 => T_MINUS_EQUAL 358 => T_MUL_EQUAL 359 => T_DIV_EQUAL 360 => T_CONCAT_EQUAL 361 => T_MOD_EQUAL 362 => T_AND_EQUAL 363 => T_OR_EQUAL 364 => T_XOR_EQUAL 365 => T_SL_EQUAL 366 => T_SR_EQUAL 367 => T_COALESCE_EQUAL 368 => T_BOOLEAN_OR 369 => T_BOOLEAN_AND 370 => T_IS_EQUAL 371 => T_IS_NOT_EQUAL 372 => T_IS_IDENTICAL 373 => T_IS_NOT_IDENTICAL 374 => T_IS_SMALLER_OR_EQUAL 375 => T_IS_GREATER_OR_EQUAL 376 => T_SPACESHIP 377 => T_SL 378 => T_SR 379 => T_INC 380 => T_DEC 381 => T_INT_CAST 382 => T_DOUBLE_CAST 383 => T_STRING_CAST 384 => T_ARRAY_CAST 385 => T_OBJECT_CAST 386 => T_BOOL_CAST 387 => T_UNSET_CAST 388 => T_VOID_CAST 389 => T_OBJECT_OPERATOR 390 => T_NULLSAFE_OBJECT_OPERATOR 391 => T_DOUBLE_ARROW 392 => T_COMMENT 393 => T_DOC_COMMENT 394 => T_OPEN_TAG 395 => T_OPEN_TAG_WITH_ECHO 396 => T_CLOSE_TAG 397 => T_WHITESPACE 398 => T_START_HEREDOC 399 => T_END_HEREDOC 400 => T_DOLLAR_OPEN_CURLY_BRACES 401 => T_CURLY_OPEN 402 => T_DOUBLE_COLON 403 => T_NS_SEPARATOR 404 => T_ELLIPSIS 405 => T_COALESCE 406 => T_POW 407 => T_POW_EQUAL 408 => T_PIPE 409 => T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG 410 => T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG 411 => T_BAD_CHARACTER
Output for 8.4.15
/bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.34' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15)
Process exited with code 1.
Output for 8.4.1 - 8.4.14
260 => T_LNUMBER 261 => T_DNUMBER 262 => T_STRING 263 => T_NAME_FULLY_QUALIFIED 264 => T_NAME_RELATIVE 265 => T_NAME_QUALIFIED 266 => T_VARIABLE 267 => T_INLINE_HTML 268 => T_ENCAPSED_AND_WHITESPACE 269 => T_CONSTANT_ENCAPSED_STRING 270 => T_STRING_VARNAME 271 => T_NUM_STRING 272 => T_INCLUDE 273 => T_INCLUDE_ONCE 274 => T_EVAL 275 => T_REQUIRE 276 => T_REQUIRE_ONCE 277 => T_LOGICAL_OR 278 => T_LOGICAL_XOR 279 => T_LOGICAL_AND 280 => T_PRINT 281 => T_YIELD 282 => T_YIELD_FROM 283 => T_INSTANCEOF 284 => T_NEW 285 => T_CLONE 286 => T_EXIT 287 => T_IF 288 => T_ELSEIF 289 => T_ELSE 290 => T_ENDIF 291 => T_ECHO 292 => T_DO 293 => T_WHILE 294 => T_ENDWHILE 295 => T_FOR 296 => T_ENDFOR 297 => T_FOREACH 298 => T_ENDFOREACH 299 => T_DECLARE 300 => T_ENDDECLARE 301 => T_AS 302 => T_SWITCH 303 => T_ENDSWITCH 304 => T_CASE 305 => T_DEFAULT 306 => T_MATCH 307 => T_BREAK 308 => T_CONTINUE 309 => T_GOTO 310 => T_FUNCTION 311 => T_FN 312 => T_CONST 313 => T_RETURN 314 => T_TRY 315 => T_CATCH 316 => T_FINALLY 317 => T_THROW 318 => T_USE 319 => T_INSTEADOF 320 => T_GLOBAL 321 => T_STATIC 322 => T_ABSTRACT 323 => T_FINAL 324 => T_PRIVATE 325 => T_PROTECTED 326 => T_PUBLIC 327 => T_PRIVATE_SET 328 => T_PROTECTED_SET 329 => T_PUBLIC_SET 330 => T_READONLY 331 => T_VAR 332 => T_UNSET 333 => T_ISSET 334 => T_EMPTY 335 => T_HALT_COMPILER 336 => T_CLASS 337 => T_TRAIT 338 => T_INTERFACE 339 => T_ENUM 340 => T_EXTENDS 341 => T_IMPLEMENTS 342 => T_NAMESPACE 343 => T_LIST 344 => T_ARRAY 345 => T_CALLABLE 346 => T_LINE 347 => T_FILE 348 => T_DIR 349 => T_CLASS_C 350 => T_TRAIT_C 351 => T_METHOD_C 352 => T_FUNC_C 353 => T_PROPERTY_C 354 => T_NS_C 355 => T_ATTRIBUTE 356 => T_PLUS_EQUAL 357 => T_MINUS_EQUAL 358 => T_MUL_EQUAL 359 => T_DIV_EQUAL 360 => T_CONCAT_EQUAL 361 => T_MOD_EQUAL 362 => T_AND_EQUAL 363 => T_OR_EQUAL 364 => T_XOR_EQUAL 365 => T_SL_EQUAL 366 => T_SR_EQUAL 367 => T_COALESCE_EQUAL 368 => T_BOOLEAN_OR 369 => T_BOOLEAN_AND 370 => T_IS_EQUAL 371 => T_IS_NOT_EQUAL 372 => T_IS_IDENTICAL 373 => T_IS_NOT_IDENTICAL 374 => T_IS_SMALLER_OR_EQUAL 375 => T_IS_GREATER_OR_EQUAL 376 => T_SPACESHIP 377 => T_SL 378 => T_SR 379 => T_INC 380 => T_DEC 381 => T_INT_CAST 382 => T_DOUBLE_CAST 383 => T_STRING_CAST 384 => T_ARRAY_CAST 385 => T_OBJECT_CAST 386 => T_BOOL_CAST 387 => T_UNSET_CAST 388 => T_OBJECT_OPERATOR 389 => T_NULLSAFE_OBJECT_OPERATOR 390 => T_DOUBLE_ARROW 391 => T_COMMENT 392 => T_DOC_COMMENT 393 => T_OPEN_TAG 394 => T_OPEN_TAG_WITH_ECHO 395 => T_CLOSE_TAG 396 => T_WHITESPACE 397 => T_START_HEREDOC 398 => T_END_HEREDOC 399 => T_DOLLAR_OPEN_CURLY_BRACES 400 => T_CURLY_OPEN 401 => T_DOUBLE_COLON 402 => T_NS_SEPARATOR 403 => T_ELLIPSIS 404 => T_COALESCE 405 => T_POW 406 => T_POW_EQUAL 407 => T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG 408 => T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG 409 => T_BAD_CHARACTER
Output for 8.2.0 - 8.2.29, 8.3.1, 8.3.3, 8.3.5 - 8.3.6, 8.3.8, 8.3.10, 8.3.12, 8.3.14, 8.3.16, 8.3.18 - 8.3.19, 8.3.21, 8.3.23 - 8.3.28
260 => T_LNUMBER 261 => T_DNUMBER 262 => T_STRING 263 => T_NAME_FULLY_QUALIFIED 264 => T_NAME_RELATIVE 265 => T_NAME_QUALIFIED 266 => T_VARIABLE 267 => T_INLINE_HTML 268 => T_ENCAPSED_AND_WHITESPACE 269 => T_CONSTANT_ENCAPSED_STRING 270 => T_STRING_VARNAME 271 => T_NUM_STRING 272 => T_INCLUDE 273 => T_INCLUDE_ONCE 274 => T_EVAL 275 => T_REQUIRE 276 => T_REQUIRE_ONCE 277 => T_LOGICAL_OR 278 => T_LOGICAL_XOR 279 => T_LOGICAL_AND 280 => T_PRINT 281 => T_YIELD 282 => T_YIELD_FROM 283 => T_INSTANCEOF 284 => T_NEW 285 => T_CLONE 286 => T_EXIT 287 => T_IF 288 => T_ELSEIF 289 => T_ELSE 290 => T_ENDIF 291 => T_ECHO 292 => T_DO 293 => T_WHILE 294 => T_ENDWHILE 295 => T_FOR 296 => T_ENDFOR 297 => T_FOREACH 298 => T_ENDFOREACH 299 => T_DECLARE 300 => T_ENDDECLARE 301 => T_AS 302 => T_SWITCH 303 => T_ENDSWITCH 304 => T_CASE 305 => T_DEFAULT 306 => T_MATCH 307 => T_BREAK 308 => T_CONTINUE 309 => T_GOTO 310 => T_FUNCTION 311 => T_FN 312 => T_CONST 313 => T_RETURN 314 => T_TRY 315 => T_CATCH 316 => T_FINALLY 317 => T_THROW 318 => T_USE 319 => T_INSTEADOF 320 => T_GLOBAL 321 => T_STATIC 322 => T_ABSTRACT 323 => T_FINAL 324 => T_PRIVATE 325 => T_PROTECTED 326 => T_PUBLIC 327 => T_READONLY 328 => T_VAR 329 => T_UNSET 330 => T_ISSET 331 => T_EMPTY 332 => T_HALT_COMPILER 333 => T_CLASS 334 => T_TRAIT 335 => T_INTERFACE 336 => T_ENUM 337 => T_EXTENDS 338 => T_IMPLEMENTS 339 => T_NAMESPACE 340 => T_LIST 341 => T_ARRAY 342 => T_CALLABLE 343 => T_LINE 344 => T_FILE 345 => T_DIR 346 => T_CLASS_C 347 => T_TRAIT_C 348 => T_METHOD_C 349 => T_FUNC_C 350 => T_NS_C 351 => T_ATTRIBUTE 352 => T_PLUS_EQUAL 353 => T_MINUS_EQUAL 354 => T_MUL_EQUAL 355 => T_DIV_EQUAL 356 => T_CONCAT_EQUAL 357 => T_MOD_EQUAL 358 => T_AND_EQUAL 359 => T_OR_EQUAL 360 => T_XOR_EQUAL 361 => T_SL_EQUAL 362 => T_SR_EQUAL 363 => T_COALESCE_EQUAL 364 => T_BOOLEAN_OR 365 => T_BOOLEAN_AND 366 => T_IS_EQUAL 367 => T_IS_NOT_EQUAL 368 => T_IS_IDENTICAL 369 => T_IS_NOT_IDENTICAL 370 => T_IS_SMALLER_OR_EQUAL 371 => T_IS_GREATER_OR_EQUAL 372 => T_SPACESHIP 373 => T_SL 374 => T_SR 375 => T_INC 376 => T_DEC 377 => T_INT_CAST 378 => T_DOUBLE_CAST 379 => T_STRING_CAST 380 => T_ARRAY_CAST 381 => T_OBJECT_CAST 382 => T_BOOL_CAST 383 => T_UNSET_CAST 384 => T_OBJECT_OPERATOR 385 => T_NULLSAFE_OBJECT_OPERATOR 386 => T_DOUBLE_ARROW 387 => T_COMMENT 388 => T_DOC_COMMENT 389 => T_OPEN_TAG 390 => T_OPEN_TAG_WITH_ECHO 391 => T_CLOSE_TAG 392 => T_WHITESPACE 393 => T_START_HEREDOC 394 => T_END_HEREDOC 395 => T_DOLLAR_OPEN_CURLY_BRACES 396 => T_CURLY_OPEN 397 => T_DOUBLE_COLON 398 => T_NS_SEPARATOR 399 => T_ELLIPSIS 400 => T_COALESCE 401 => T_POW 402 => T_POW_EQUAL 403 => T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG 404 => T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG 405 => T_BAD_CHARACTER
Output for 8.3.0, 8.3.2, 8.3.4, 8.3.7, 8.3.9, 8.3.11, 8.3.13, 8.3.15, 8.3.17, 8.3.20, 8.3.22
258 => T_THROW 260 => T_INCLUDE 261 => T_INCLUDE_ONCE 262 => T_REQUIRE 263 => T_REQUIRE_ONCE 264 => T_LOGICAL_OR 265 => T_LOGICAL_XOR 266 => T_LOGICAL_AND 267 => T_PRINT 268 => T_YIELD 269 => T_DOUBLE_ARROW 270 => T_YIELD_FROM 271 => T_PLUS_EQUAL 272 => T_MINUS_EQUAL 273 => T_MUL_EQUAL 274 => T_DIV_EQUAL 275 => T_CONCAT_EQUAL 276 => T_MOD_EQUAL 277 => T_AND_EQUAL 278 => T_OR_EQUAL 279 => T_XOR_EQUAL 280 => T_SL_EQUAL 281 => T_SR_EQUAL 282 => T_POW_EQUAL 283 => T_COALESCE_EQUAL 284 => T_COALESCE 285 => T_BOOLEAN_OR 286 => T_BOOLEAN_AND 287 => T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG 288 => T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG 289 => T_IS_EQUAL 290 => T_IS_NOT_EQUAL 291 => T_IS_IDENTICAL 292 => T_IS_NOT_IDENTICAL 293 => T_SPACESHIP 294 => T_IS_SMALLER_OR_EQUAL 295 => T_IS_GREATER_OR_EQUAL 296 => T_SL 297 => T_SR 298 => T_INSTANCEOF 299 => T_INT_CAST 300 => T_DOUBLE_CAST 301 => T_STRING_CAST 302 => T_ARRAY_CAST 303 => T_OBJECT_CAST 304 => T_BOOL_CAST 305 => T_UNSET_CAST 306 => T_POW 307 => T_CLONE 309 => T_ELSEIF 310 => T_ELSE 311 => T_LNUMBER 312 => T_DNUMBER 313 => T_STRING 314 => T_NAME_FULLY_QUALIFIED 315 => T_NAME_RELATIVE 316 => T_NAME_QUALIFIED 317 => T_VARIABLE 318 => T_INLINE_HTML 319 => T_ENCAPSED_AND_WHITESPACE 320 => T_CONSTANT_ENCAPSED_STRING 321 => T_STRING_VARNAME 322 => T_NUM_STRING 323 => T_EVAL 324 => T_NEW 325 => T_EXIT 326 => T_IF 327 => T_ENDIF 328 => T_ECHO 329 => T_DO 330 => T_WHILE 331 => T_ENDWHILE 332 => T_FOR 333 => T_ENDFOR 334 => T_FOREACH 335 => T_ENDFOREACH 336 => T_DECLARE 337 => T_ENDDECLARE 338 => T_AS 339 => T_SWITCH 340 => T_ENDSWITCH 341 => T_CASE 342 => T_DEFAULT 343 => T_MATCH 344 => T_BREAK 345 => T_CONTINUE 346 => T_GOTO 347 => T_FUNCTION 348 => T_FN 349 => T_CONST 350 => T_RETURN 351 => T_TRY 352 => T_CATCH 353 => T_FINALLY 354 => T_USE 355 => T_INSTEADOF 356 => T_GLOBAL 357 => T_STATIC 358 => T_ABSTRACT 359 => T_FINAL 360 => T_PRIVATE 361 => T_PROTECTED 362 => T_PUBLIC 363 => T_READONLY 364 => T_VAR 365 => T_UNSET 366 => T_ISSET 367 => T_EMPTY 368 => T_HALT_COMPILER 369 => T_CLASS 370 => T_TRAIT 371 => T_INTERFACE 372 => T_ENUM 373 => T_EXTENDS 374 => T_IMPLEMENTS 375 => T_NAMESPACE 376 => T_LIST 377 => T_ARRAY 378 => T_CALLABLE 379 => T_LINE 380 => T_FILE 381 => T_DIR 382 => T_CLASS_C 383 => T_TRAIT_C 384 => T_METHOD_C 385 => T_FUNC_C 386 => T_NS_C 387 => T_ATTRIBUTE 388 => T_INC 389 => T_DEC 390 => T_OBJECT_OPERATOR 391 => T_NULLSAFE_OBJECT_OPERATOR 392 => T_COMMENT 393 => T_DOC_COMMENT 394 => T_OPEN_TAG 395 => T_OPEN_TAG_WITH_ECHO 396 => T_CLOSE_TAG 397 => T_WHITESPACE 398 => T_START_HEREDOC 399 => T_END_HEREDOC 400 => T_DOLLAR_OPEN_CURLY_BRACES 401 => T_CURLY_OPEN 402 => T_DOUBLE_COLON 403 => T_NS_SEPARATOR 404 => T_ELLIPSIS 405 => T_BAD_CHARACTER

preferences:
53.28 ms | 432 KiB | 5 Q