3v4l.org

run code in 300+ PHP versions simultaneously
<?php /** text/plain になるパターン */ // 一時的なファイルを作成する $temp = tmpfile(); // ファイルに2行のCSVデータを書き込む fwrite($temp, "header1,header2\n"); fwrite($temp, "data1,data2\n"); // 一時ファイルのパスを取得する $meta_data = stream_get_meta_data($temp); $path = $meta_data["uri"]; // mime_content_type関数を使用してファイルのMIMEタイプを取得する $ret = mime_content_type($path); var_dump($ret); // string(10) "text/plain" // ファイルを閉じる(一時ファイルは自動的に削除されます) fclose($temp); /** text/csv になるパターン */ // 一時的なファイルを作成する $temp = tmpfile(); // ファイルに3行のCSVデータを書き込む fwrite($temp, "header1,header2\n"); fwrite($temp, "data1,data2\n"); fwrite($temp, "data3,data4\n"); // 一時ファイルのパスを取得する $meta_data = stream_get_meta_data($temp); $path = $meta_data["uri"]; // mime_content_type関数を使用してファイルのMIMEタイプを取得する $ret = mime_content_type($path); var_dump($ret); // string(8) "text/csv" // ファイルを閉じる(一時ファイルは自動的に削除されます) fclose($temp);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/gl9C2
function name:  (null)
number of ops:  59
compiled vars:  !0 = $temp, !1 = $meta_data, !2 = $path, !3 = $ret
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    5     0  E >   INIT_FCALL                                               'tmpfile'
          1        DO_ICALL                                         $4      
          2        ASSIGN                                                   !0, $4
    7     3        INIT_FCALL                                               'fwrite'
          4        SEND_VAR                                                 !0
          5        SEND_VAL                                                 'header1%2Cheader2%0A'
          6        DO_ICALL                                                 
    8     7        INIT_FCALL                                               'fwrite'
          8        SEND_VAR                                                 !0
          9        SEND_VAL                                                 'data1%2Cdata2%0A'
         10        DO_ICALL                                                 
   10    11        INIT_FCALL                                               'stream_get_meta_data'
         12        SEND_VAR                                                 !0
         13        DO_ICALL                                         $8      
         14        ASSIGN                                                   !1, $8
   11    15        FETCH_DIM_R                                      ~10     !1, 'uri'
         16        ASSIGN                                                   !2, ~10
   13    17        INIT_FCALL                                               'mime_content_type'
         18        SEND_VAR                                                 !2
         19        DO_ICALL                                         $12     
         20        ASSIGN                                                   !3, $12
   14    21        INIT_FCALL                                               'var_dump'
         22        SEND_VAR                                                 !3
         23        DO_ICALL                                                 
   16    24        INIT_FCALL                                               'fclose'
         25        SEND_VAR                                                 !0
         26        DO_ICALL                                                 
   20    27        INIT_FCALL                                               'tmpfile'
         28        DO_ICALL                                         $16     
         29        ASSIGN                                                   !0, $16
   22    30        INIT_FCALL                                               'fwrite'
         31        SEND_VAR                                                 !0
         32        SEND_VAL                                                 'header1%2Cheader2%0A'
         33        DO_ICALL                                                 
   23    34        INIT_FCALL                                               'fwrite'
         35        SEND_VAR                                                 !0
         36        SEND_VAL                                                 'data1%2Cdata2%0A'
         37        DO_ICALL                                                 
   24    38        INIT_FCALL                                               'fwrite'
         39        SEND_VAR                                                 !0
         40        SEND_VAL                                                 'data3%2Cdata4%0A'
         41        DO_ICALL                                                 
   26    42        INIT_FCALL                                               'stream_get_meta_data'
         43        SEND_VAR                                                 !0
         44        DO_ICALL                                         $21     
         45        ASSIGN                                                   !1, $21
   27    46        FETCH_DIM_R                                      ~23     !1, 'uri'
         47        ASSIGN                                                   !2, ~23
   29    48        INIT_FCALL                                               'mime_content_type'
         49        SEND_VAR                                                 !2
         50        DO_ICALL                                         $25     
         51        ASSIGN                                                   !3, $25
   30    52        INIT_FCALL                                               'var_dump'
         53        SEND_VAR                                                 !3
         54        DO_ICALL                                                 
   32    55        INIT_FCALL                                               'fclose'
         56        SEND_VAR                                                 !0
         57        DO_ICALL                                                 
         58      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
141.75 ms | 1470 KiB | 19 Q