Annotation of embedaddon/php/ext/standard/tests/file/pathinfo_variaton.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test pathinfo() function: usage variations
                      3: --FILE--
                      4: <?php
                      5: /* Prototype: mixed pathinfo ( string $path [, int $options] );
                      6:    Description: Returns information about a file path
                      7: */
                      8: 
                      9: echo "*** Testing pathinfo() with miscelleneous input arguments ***\n";
                     10: 
                     11: $fp = fopen(__FILE__, "r");
                     12: unset($fp);
                     13: 
                     14: class object_temp {
                     15:   public $url_var = "www.foo.com";
                     16:   var $html_var = "/var/html/testdir/example.html";
                     17:   var $dir_var = "/testdir/foo/test/";
                     18:   public $file_var = "/foo//symlink.link";
                     19:   var $number = 12345;
                     20: }
                     21: $obj = new object_temp();
                     22: 
                     23: $path_arr = array (
                     24:   "www.example.com",
                     25:   "/testdir/foo//test/",
                     26:   "../foo/test.link",
                     27:   "./test/work/scratch/mydir/yourdir/ourdir/test1/test2/test3/test4/test5/test6/test.tmp",
                     28:   2.345
                     29: );
                     30: 
                     31: $paths = array (
                     32:   /* pathname containing numeric string */
                     33:   0,
                     34:   1234,
                     35:   -1234,
                     36:   2.3456,
                     37: 
                     38:   /* pathname as boolean */
                     39:   TRUE,
                     40:   FALSE,
                     41: 
                     42:   /* pathname as an array */
                     43:   "./array(1, 2)",
                     44:   "array( array(), null)",
                     45: 
                     46:   /* pathname as object */
                     47:   $obj,
                     48: 
                     49:   /* pathname as spaces */
                     50:   " ",
                     51:   ' ',
                     52: 
                     53:   /* empty pathname */
                     54:   "",
                     55:   '',
                     56: 
                     57:   /* pathname as NULL */
                     58:   NULL,
                     59:   null,
                     60:   
                     61:   /* filename as resource */
                     62:   $fp,
                     63: 
                     64:   /* pathname as members of object */
                     65:   $obj->url_var,
                     66:   $obj->html_var,
                     67:   $obj->dir_var,
                     68:   $obj->file_var,
                     69:   $obj->number,
                     70: 
                     71:   /* pathname as member of array */
                     72:   $path_arr[0],
                     73:   $path_arr[1],
                     74:   $path_arr[2],
                     75:   $path_arr[3],
                     76:   $path_arr[4]
                     77: );
                     78: 
                     79: $counter = 1;
                     80: /* loop through $paths to test each $path in the above array */
                     81: foreach($paths as $path) {
                     82:   echo "-- Iteration $counter --\n";
                     83:   var_dump( pathinfo($path) );
                     84:   var_dump( pathinfo($path, PATHINFO_DIRNAME) );
                     85:   var_dump( pathinfo($path, PATHINFO_BASENAME) );
                     86:   var_dump( pathinfo($path, PATHINFO_EXTENSION) );
                     87:   var_dump( pathinfo($path, PATHINFO_FILENAME) );
                     88:   $counter++;
                     89: }
                     90: 
                     91: echo "Done\n";
                     92: ?>
                     93: --EXPECTF--
                     94: *** Testing pathinfo() with miscelleneous input arguments ***
                     95: 
                     96: Notice: Undefined variable: fp in %s on line %d
                     97: -- Iteration 1 --
                     98: array(3) {
                     99:   ["dirname"]=>
                    100:   string(1) "."
                    101:   ["basename"]=>
                    102:   string(1) "0"
                    103:   ["filename"]=>
                    104:   string(1) "0"
                    105: }
                    106: string(1) "."
                    107: string(1) "0"
                    108: string(0) ""
                    109: string(1) "0"
                    110: -- Iteration 2 --
                    111: array(3) {
                    112:   ["dirname"]=>
                    113:   string(1) "."
                    114:   ["basename"]=>
                    115:   string(4) "1234"
                    116:   ["filename"]=>
                    117:   string(4) "1234"
                    118: }
                    119: string(1) "."
                    120: string(4) "1234"
                    121: string(0) ""
                    122: string(4) "1234"
                    123: -- Iteration 3 --
                    124: array(3) {
                    125:   ["dirname"]=>
                    126:   string(1) "."
                    127:   ["basename"]=>
                    128:   string(5) "-1234"
                    129:   ["filename"]=>
                    130:   string(5) "-1234"
                    131: }
                    132: string(1) "."
                    133: string(5) "-1234"
                    134: string(0) ""
                    135: string(5) "-1234"
                    136: -- Iteration 4 --
                    137: array(4) {
                    138:   ["dirname"]=>
                    139:   string(1) "."
                    140:   ["basename"]=>
                    141:   string(6) "2.3456"
                    142:   ["extension"]=>
                    143:   string(4) "3456"
                    144:   ["filename"]=>
                    145:   string(1) "2"
                    146: }
                    147: string(1) "."
                    148: string(6) "2.3456"
                    149: string(4) "3456"
                    150: string(1) "2"
                    151: -- Iteration 5 --
                    152: array(3) {
                    153:   ["dirname"]=>
                    154:   string(1) "."
                    155:   ["basename"]=>
                    156:   string(1) "1"
                    157:   ["filename"]=>
                    158:   string(1) "1"
                    159: }
                    160: string(1) "."
                    161: string(1) "1"
                    162: string(0) ""
                    163: string(1) "1"
                    164: -- Iteration 6 --
                    165: array(2) {
                    166:   ["basename"]=>
                    167:   string(0) ""
                    168:   ["filename"]=>
                    169:   string(0) ""
                    170: }
                    171: string(0) ""
                    172: string(0) ""
                    173: string(0) ""
                    174: string(0) ""
                    175: -- Iteration 7 --
                    176: array(3) {
                    177:   ["dirname"]=>
                    178:   string(1) "."
                    179:   ["basename"]=>
                    180:   string(11) "array(1, 2)"
                    181:   ["filename"]=>
                    182:   string(11) "array(1, 2)"
                    183: }
                    184: string(1) "."
                    185: string(11) "array(1, 2)"
                    186: string(0) ""
                    187: string(11) "array(1, 2)"
                    188: -- Iteration 8 --
                    189: array(3) {
                    190:   ["dirname"]=>
                    191:   string(1) "."
                    192:   ["basename"]=>
                    193:   string(21) "array( array(), null)"
                    194:   ["filename"]=>
                    195:   string(21) "array( array(), null)"
                    196: }
                    197: string(1) "."
                    198: string(21) "array( array(), null)"
                    199: string(0) ""
                    200: string(21) "array( array(), null)"
                    201: -- Iteration 9 --
                    202: 
                    203: Warning: pathinfo() expects parameter 1 to be string, object given in %s on line %d
                    204: NULL
                    205: 
                    206: Warning: pathinfo() expects parameter 1 to be string, object given in %s on line %d
                    207: NULL
                    208: 
                    209: Warning: pathinfo() expects parameter 1 to be string, object given in %s on line %d
                    210: NULL
                    211: 
                    212: Warning: pathinfo() expects parameter 1 to be string, object given in %s on line %d
                    213: NULL
                    214: 
                    215: Warning: pathinfo() expects parameter 1 to be string, object given in %s on line %d
                    216: NULL
                    217: -- Iteration 10 --
                    218: array(3) {
                    219:   ["dirname"]=>
                    220:   string(1) "."
                    221:   ["basename"]=>
                    222:   string(1) " "
                    223:   ["filename"]=>
                    224:   string(1) " "
                    225: }
                    226: string(1) "."
                    227: string(1) " "
                    228: string(0) ""
                    229: string(1) " "
                    230: -- Iteration 11 --
                    231: array(3) {
                    232:   ["dirname"]=>
                    233:   string(1) "."
                    234:   ["basename"]=>
                    235:   string(1) " "
                    236:   ["filename"]=>
                    237:   string(1) " "
                    238: }
                    239: string(1) "."
                    240: string(1) " "
                    241: string(0) ""
                    242: string(1) " "
                    243: -- Iteration 12 --
                    244: array(2) {
                    245:   ["basename"]=>
                    246:   string(0) ""
                    247:   ["filename"]=>
                    248:   string(0) ""
                    249: }
                    250: string(0) ""
                    251: string(0) ""
                    252: string(0) ""
                    253: string(0) ""
                    254: -- Iteration 13 --
                    255: array(2) {
                    256:   ["basename"]=>
                    257:   string(0) ""
                    258:   ["filename"]=>
                    259:   string(0) ""
                    260: }
                    261: string(0) ""
                    262: string(0) ""
                    263: string(0) ""
                    264: string(0) ""
                    265: -- Iteration 14 --
                    266: array(2) {
                    267:   ["basename"]=>
                    268:   string(0) ""
                    269:   ["filename"]=>
                    270:   string(0) ""
                    271: }
                    272: string(0) ""
                    273: string(0) ""
                    274: string(0) ""
                    275: string(0) ""
                    276: -- Iteration 15 --
                    277: array(2) {
                    278:   ["basename"]=>
                    279:   string(0) ""
                    280:   ["filename"]=>
                    281:   string(0) ""
                    282: }
                    283: string(0) ""
                    284: string(0) ""
                    285: string(0) ""
                    286: string(0) ""
                    287: -- Iteration 16 --
                    288: array(2) {
                    289:   ["basename"]=>
                    290:   string(0) ""
                    291:   ["filename"]=>
                    292:   string(0) ""
                    293: }
                    294: string(0) ""
                    295: string(0) ""
                    296: string(0) ""
                    297: string(0) ""
                    298: -- Iteration 17 --
                    299: array(4) {
                    300:   ["dirname"]=>
                    301:   string(1) "."
                    302:   ["basename"]=>
                    303:   string(11) "www.foo.com"
                    304:   ["extension"]=>
                    305:   string(3) "com"
                    306:   ["filename"]=>
                    307:   string(7) "www.foo"
                    308: }
                    309: string(1) "."
                    310: string(11) "www.foo.com"
                    311: string(3) "com"
                    312: string(7) "www.foo"
                    313: -- Iteration 18 --
                    314: array(4) {
                    315:   ["dirname"]=>
                    316:   string(17) "/var/html/testdir"
                    317:   ["basename"]=>
                    318:   string(12) "example.html"
                    319:   ["extension"]=>
                    320:   string(4) "html"
                    321:   ["filename"]=>
                    322:   string(7) "example"
                    323: }
                    324: string(17) "/var/html/testdir"
                    325: string(12) "example.html"
                    326: string(4) "html"
                    327: string(7) "example"
                    328: -- Iteration 19 --
                    329: array(3) {
                    330:   ["dirname"]=>
                    331:   string(12) "/testdir/foo"
                    332:   ["basename"]=>
                    333:   string(4) "test"
                    334:   ["filename"]=>
                    335:   string(4) "test"
                    336: }
                    337: string(12) "/testdir/foo"
                    338: string(4) "test"
                    339: string(0) ""
                    340: string(4) "test"
                    341: -- Iteration 20 --
                    342: array(4) {
                    343:   ["dirname"]=>
                    344:   string(4) "/foo"
                    345:   ["basename"]=>
                    346:   string(12) "symlink.link"
                    347:   ["extension"]=>
                    348:   string(4) "link"
                    349:   ["filename"]=>
                    350:   string(7) "symlink"
                    351: }
                    352: string(4) "/foo"
                    353: string(12) "symlink.link"
                    354: string(4) "link"
                    355: string(7) "symlink"
                    356: -- Iteration 21 --
                    357: array(3) {
                    358:   ["dirname"]=>
                    359:   string(1) "."
                    360:   ["basename"]=>
                    361:   string(5) "12345"
                    362:   ["filename"]=>
                    363:   string(5) "12345"
                    364: }
                    365: string(1) "."
                    366: string(5) "12345"
                    367: string(0) ""
                    368: string(5) "12345"
                    369: -- Iteration 22 --
                    370: array(4) {
                    371:   ["dirname"]=>
                    372:   string(1) "."
                    373:   ["basename"]=>
                    374:   string(15) "www.example.com"
                    375:   ["extension"]=>
                    376:   string(3) "com"
                    377:   ["filename"]=>
                    378:   string(11) "www.example"
                    379: }
                    380: string(1) "."
                    381: string(15) "www.example.com"
                    382: string(3) "com"
                    383: string(11) "www.example"
                    384: -- Iteration 23 --
                    385: array(3) {
                    386:   ["dirname"]=>
                    387:   string(12) "/testdir/foo"
                    388:   ["basename"]=>
                    389:   string(4) "test"
                    390:   ["filename"]=>
                    391:   string(4) "test"
                    392: }
                    393: string(12) "/testdir/foo"
                    394: string(4) "test"
                    395: string(0) ""
                    396: string(4) "test"
                    397: -- Iteration 24 --
                    398: array(4) {
                    399:   ["dirname"]=>
                    400:   string(6) "../foo"
                    401:   ["basename"]=>
                    402:   string(9) "test.link"
                    403:   ["extension"]=>
                    404:   string(4) "link"
                    405:   ["filename"]=>
                    406:   string(4) "test"
                    407: }
                    408: string(6) "../foo"
                    409: string(9) "test.link"
                    410: string(4) "link"
                    411: string(4) "test"
                    412: -- Iteration 25 --
                    413: array(4) {
                    414:   ["dirname"]=>
                    415:   string(76) "./test/work/scratch/mydir/yourdir/ourdir/test1/test2/test3/test4/test5/test6"
                    416:   ["basename"]=>
                    417:   string(8) "test.tmp"
                    418:   ["extension"]=>
                    419:   string(3) "tmp"
                    420:   ["filename"]=>
                    421:   string(4) "test"
                    422: }
                    423: string(76) "./test/work/scratch/mydir/yourdir/ourdir/test1/test2/test3/test4/test5/test6"
                    424: string(8) "test.tmp"
                    425: string(3) "tmp"
                    426: string(4) "test"
                    427: -- Iteration 26 --
                    428: array(4) {
                    429:   ["dirname"]=>
                    430:   string(1) "."
                    431:   ["basename"]=>
                    432:   string(5) "2.345"
                    433:   ["extension"]=>
                    434:   string(3) "345"
                    435:   ["filename"]=>
                    436:   string(1) "2"
                    437: }
                    438: string(1) "."
                    439: string(5) "2.345"
                    440: string(3) "345"
                    441: string(1) "2"
                    442: Done

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>