File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / tests / lang / operators / bitwiseShiftLeft_variationStr.phpt
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue Feb 21 23:48:06 2012 UTC (12 years, 4 months ago) by misho
Branches: php, MAIN
CVS tags: v5_4_3elwix, v5_4_29p0, v5_4_29, v5_4_20p0, v5_4_20, v5_4_17p0, v5_4_17, v5_3_10, HEAD
php

    1: --TEST--
    2: Test << operator : various numbers as strings
    3: --SKIPIF--
    4: <?php
    5: if (PHP_INT_SIZE != 4) die("skip this test is for 32bit platform only");
    6: ?>
    7: --FILE--
    8: <?php
    9: 
   10: $strVals = array(
   11:    "0","65","-44", "1.2", "-7.7", "abc", "123abc", "123e5", "123e5xyz", " 123abc", "123 abc", "123abc ", "3.4a",
   12:    "a5.9"
   13: );
   14: 
   15: error_reporting(E_ERROR);
   16: 
   17: foreach ($strVals as $strVal) {
   18:    foreach($strVals as $otherVal) {
   19: 	   echo "--- testing: '$strVal' << '$otherVal' ---\n";   
   20:       var_dump(bin2hex($strVal<<$otherVal));
   21:    }
   22: }
   23: 
   24:    
   25: ?>
   26: ===DONE===
   27: --EXPECT--
   28: --- testing: '0' << '0' ---
   29: string(2) "30"
   30: --- testing: '0' << '65' ---
   31: string(2) "30"
   32: --- testing: '0' << '-44' ---
   33: string(2) "30"
   34: --- testing: '0' << '1.2' ---
   35: string(2) "30"
   36: --- testing: '0' << '-7.7' ---
   37: string(2) "30"
   38: --- testing: '0' << 'abc' ---
   39: string(2) "30"
   40: --- testing: '0' << '123abc' ---
   41: string(2) "30"
   42: --- testing: '0' << '123e5' ---
   43: string(2) "30"
   44: --- testing: '0' << '123e5xyz' ---
   45: string(2) "30"
   46: --- testing: '0' << ' 123abc' ---
   47: string(2) "30"
   48: --- testing: '0' << '123 abc' ---
   49: string(2) "30"
   50: --- testing: '0' << '123abc ' ---
   51: string(2) "30"
   52: --- testing: '0' << '3.4a' ---
   53: string(2) "30"
   54: --- testing: '0' << 'a5.9' ---
   55: string(2) "30"
   56: --- testing: '65' << '0' ---
   57: string(4) "3635"
   58: --- testing: '65' << '65' ---
   59: string(6) "313330"
   60: --- testing: '65' << '-44' ---
   61: string(16) "3638313537343430"
   62: --- testing: '65' << '1.2' ---
   63: string(6) "313330"
   64: --- testing: '65' << '-7.7' ---
   65: string(22) "2d32313133393239323136"
   66: --- testing: '65' << 'abc' ---
   67: string(4) "3635"
   68: --- testing: '65' << '123abc' ---
   69: string(18) "313334323137373238"
   70: --- testing: '65' << '123e5' ---
   71: string(18) "313334323137373238"
   72: --- testing: '65' << '123e5xyz' ---
   73: string(18) "313334323137373238"
   74: --- testing: '65' << ' 123abc' ---
   75: string(18) "313334323137373238"
   76: --- testing: '65' << '123 abc' ---
   77: string(18) "313334323137373238"
   78: --- testing: '65' << '123abc ' ---
   79: string(18) "313334323137373238"
   80: --- testing: '65' << '3.4a' ---
   81: string(6) "353230"
   82: --- testing: '65' << 'a5.9' ---
   83: string(4) "3635"
   84: --- testing: '-44' << '0' ---
   85: string(6) "2d3434"
   86: --- testing: '-44' << '65' ---
   87: string(6) "2d3838"
   88: --- testing: '-44' << '-44' ---
   89: string(18) "2d3436313337333434"
   90: --- testing: '-44' << '1.2' ---
   91: string(6) "2d3838"
   92: --- testing: '-44' << '-7.7' ---
   93: string(22) "2d31343736333935303038"
   94: --- testing: '-44' << 'abc' ---
   95: string(6) "2d3434"
   96: --- testing: '-44' << '123abc' ---
   97: string(22) "2d31363130363132373336"
   98: --- testing: '-44' << '123e5' ---
   99: string(22) "2d31363130363132373336"
  100: --- testing: '-44' << '123e5xyz' ---
  101: string(22) "2d31363130363132373336"
  102: --- testing: '-44' << ' 123abc' ---
  103: string(22) "2d31363130363132373336"
  104: --- testing: '-44' << '123 abc' ---
  105: string(22) "2d31363130363132373336"
  106: --- testing: '-44' << '123abc ' ---
  107: string(22) "2d31363130363132373336"
  108: --- testing: '-44' << '3.4a' ---
  109: string(8) "2d333532"
  110: --- testing: '-44' << 'a5.9' ---
  111: string(6) "2d3434"
  112: --- testing: '1.2' << '0' ---
  113: string(2) "31"
  114: --- testing: '1.2' << '65' ---
  115: string(2) "32"
  116: --- testing: '1.2' << '-44' ---
  117: string(14) "31303438353736"
  118: --- testing: '1.2' << '1.2' ---
  119: string(2) "32"
  120: --- testing: '1.2' << '-7.7' ---
  121: string(16) "3333353534343332"
  122: --- testing: '1.2' << 'abc' ---
  123: string(2) "31"
  124: --- testing: '1.2' << '123abc' ---
  125: string(18) "313334323137373238"
  126: --- testing: '1.2' << '123e5' ---
  127: string(18) "313334323137373238"
  128: --- testing: '1.2' << '123e5xyz' ---
  129: string(18) "313334323137373238"
  130: --- testing: '1.2' << ' 123abc' ---
  131: string(18) "313334323137373238"
  132: --- testing: '1.2' << '123 abc' ---
  133: string(18) "313334323137373238"
  134: --- testing: '1.2' << '123abc ' ---
  135: string(18) "313334323137373238"
  136: --- testing: '1.2' << '3.4a' ---
  137: string(2) "38"
  138: --- testing: '1.2' << 'a5.9' ---
  139: string(2) "31"
  140: --- testing: '-7.7' << '0' ---
  141: string(4) "2d37"
  142: --- testing: '-7.7' << '65' ---
  143: string(6) "2d3134"
  144: --- testing: '-7.7' << '-44' ---
  145: string(16) "2d37333430303332"
  146: --- testing: '-7.7' << '1.2' ---
  147: string(6) "2d3134"
  148: --- testing: '-7.7' << '-7.7' ---
  149: string(20) "2d323334383831303234"
  150: --- testing: '-7.7' << 'abc' ---
  151: string(4) "2d37"
  152: --- testing: '-7.7' << '123abc' ---
  153: string(20) "2d393339353234303936"
  154: --- testing: '-7.7' << '123e5' ---
  155: string(20) "2d393339353234303936"
  156: --- testing: '-7.7' << '123e5xyz' ---
  157: string(20) "2d393339353234303936"
  158: --- testing: '-7.7' << ' 123abc' ---
  159: string(20) "2d393339353234303936"
  160: --- testing: '-7.7' << '123 abc' ---
  161: string(20) "2d393339353234303936"
  162: --- testing: '-7.7' << '123abc ' ---
  163: string(20) "2d393339353234303936"
  164: --- testing: '-7.7' << '3.4a' ---
  165: string(6) "2d3536"
  166: --- testing: '-7.7' << 'a5.9' ---
  167: string(4) "2d37"
  168: --- testing: 'abc' << '0' ---
  169: string(2) "30"
  170: --- testing: 'abc' << '65' ---
  171: string(2) "30"
  172: --- testing: 'abc' << '-44' ---
  173: string(2) "30"
  174: --- testing: 'abc' << '1.2' ---
  175: string(2) "30"
  176: --- testing: 'abc' << '-7.7' ---
  177: string(2) "30"
  178: --- testing: 'abc' << 'abc' ---
  179: string(2) "30"
  180: --- testing: 'abc' << '123abc' ---
  181: string(2) "30"
  182: --- testing: 'abc' << '123e5' ---
  183: string(2) "30"
  184: --- testing: 'abc' << '123e5xyz' ---
  185: string(2) "30"
  186: --- testing: 'abc' << ' 123abc' ---
  187: string(2) "30"
  188: --- testing: 'abc' << '123 abc' ---
  189: string(2) "30"
  190: --- testing: 'abc' << '123abc ' ---
  191: string(2) "30"
  192: --- testing: 'abc' << '3.4a' ---
  193: string(2) "30"
  194: --- testing: 'abc' << 'a5.9' ---
  195: string(2) "30"
  196: --- testing: '123abc' << '0' ---
  197: string(6) "313233"
  198: --- testing: '123abc' << '65' ---
  199: string(6) "323436"
  200: --- testing: '123abc' << '-44' ---
  201: string(18) "313238393734383438"
  202: --- testing: '123abc' << '1.2' ---
  203: string(6) "323436"
  204: --- testing: '123abc' << '-7.7' ---
  205: string(20) "2d313637373732313630"
  206: --- testing: '123abc' << 'abc' ---
  207: string(6) "313233"
  208: --- testing: '123abc' << '123abc' ---
  209: string(20) "2d363731303838363430"
  210: --- testing: '123abc' << '123e5' ---
  211: string(20) "2d363731303838363430"
  212: --- testing: '123abc' << '123e5xyz' ---
  213: string(20) "2d363731303838363430"
  214: --- testing: '123abc' << ' 123abc' ---
  215: string(20) "2d363731303838363430"
  216: --- testing: '123abc' << '123 abc' ---
  217: string(20) "2d363731303838363430"
  218: --- testing: '123abc' << '123abc ' ---
  219: string(20) "2d363731303838363430"
  220: --- testing: '123abc' << '3.4a' ---
  221: string(6) "393834"
  222: --- testing: '123abc' << 'a5.9' ---
  223: string(6) "313233"
  224: --- testing: '123e5' << '0' ---
  225: string(6) "313233"
  226: --- testing: '123e5' << '65' ---
  227: string(6) "323436"
  228: --- testing: '123e5' << '-44' ---
  229: string(18) "313238393734383438"
  230: --- testing: '123e5' << '1.2' ---
  231: string(6) "323436"
  232: --- testing: '123e5' << '-7.7' ---
  233: string(20) "2d313637373732313630"
  234: --- testing: '123e5' << 'abc' ---
  235: string(6) "313233"
  236: --- testing: '123e5' << '123abc' ---
  237: string(20) "2d363731303838363430"
  238: --- testing: '123e5' << '123e5' ---
  239: string(20) "2d363731303838363430"
  240: --- testing: '123e5' << '123e5xyz' ---
  241: string(20) "2d363731303838363430"
  242: --- testing: '123e5' << ' 123abc' ---
  243: string(20) "2d363731303838363430"
  244: --- testing: '123e5' << '123 abc' ---
  245: string(20) "2d363731303838363430"
  246: --- testing: '123e5' << '123abc ' ---
  247: string(20) "2d363731303838363430"
  248: --- testing: '123e5' << '3.4a' ---
  249: string(6) "393834"
  250: --- testing: '123e5' << 'a5.9' ---
  251: string(6) "313233"
  252: --- testing: '123e5xyz' << '0' ---
  253: string(6) "313233"
  254: --- testing: '123e5xyz' << '65' ---
  255: string(6) "323436"
  256: --- testing: '123e5xyz' << '-44' ---
  257: string(18) "313238393734383438"
  258: --- testing: '123e5xyz' << '1.2' ---
  259: string(6) "323436"
  260: --- testing: '123e5xyz' << '-7.7' ---
  261: string(20) "2d313637373732313630"
  262: --- testing: '123e5xyz' << 'abc' ---
  263: string(6) "313233"
  264: --- testing: '123e5xyz' << '123abc' ---
  265: string(20) "2d363731303838363430"
  266: --- testing: '123e5xyz' << '123e5' ---
  267: string(20) "2d363731303838363430"
  268: --- testing: '123e5xyz' << '123e5xyz' ---
  269: string(20) "2d363731303838363430"
  270: --- testing: '123e5xyz' << ' 123abc' ---
  271: string(20) "2d363731303838363430"
  272: --- testing: '123e5xyz' << '123 abc' ---
  273: string(20) "2d363731303838363430"
  274: --- testing: '123e5xyz' << '123abc ' ---
  275: string(20) "2d363731303838363430"
  276: --- testing: '123e5xyz' << '3.4a' ---
  277: string(6) "393834"
  278: --- testing: '123e5xyz' << 'a5.9' ---
  279: string(6) "313233"
  280: --- testing: ' 123abc' << '0' ---
  281: string(6) "313233"
  282: --- testing: ' 123abc' << '65' ---
  283: string(6) "323436"
  284: --- testing: ' 123abc' << '-44' ---
  285: string(18) "313238393734383438"
  286: --- testing: ' 123abc' << '1.2' ---
  287: string(6) "323436"
  288: --- testing: ' 123abc' << '-7.7' ---
  289: string(20) "2d313637373732313630"
  290: --- testing: ' 123abc' << 'abc' ---
  291: string(6) "313233"
  292: --- testing: ' 123abc' << '123abc' ---
  293: string(20) "2d363731303838363430"
  294: --- testing: ' 123abc' << '123e5' ---
  295: string(20) "2d363731303838363430"
  296: --- testing: ' 123abc' << '123e5xyz' ---
  297: string(20) "2d363731303838363430"
  298: --- testing: ' 123abc' << ' 123abc' ---
  299: string(20) "2d363731303838363430"
  300: --- testing: ' 123abc' << '123 abc' ---
  301: string(20) "2d363731303838363430"
  302: --- testing: ' 123abc' << '123abc ' ---
  303: string(20) "2d363731303838363430"
  304: --- testing: ' 123abc' << '3.4a' ---
  305: string(6) "393834"
  306: --- testing: ' 123abc' << 'a5.9' ---
  307: string(6) "313233"
  308: --- testing: '123 abc' << '0' ---
  309: string(6) "313233"
  310: --- testing: '123 abc' << '65' ---
  311: string(6) "323436"
  312: --- testing: '123 abc' << '-44' ---
  313: string(18) "313238393734383438"
  314: --- testing: '123 abc' << '1.2' ---
  315: string(6) "323436"
  316: --- testing: '123 abc' << '-7.7' ---
  317: string(20) "2d313637373732313630"
  318: --- testing: '123 abc' << 'abc' ---
  319: string(6) "313233"
  320: --- testing: '123 abc' << '123abc' ---
  321: string(20) "2d363731303838363430"
  322: --- testing: '123 abc' << '123e5' ---
  323: string(20) "2d363731303838363430"
  324: --- testing: '123 abc' << '123e5xyz' ---
  325: string(20) "2d363731303838363430"
  326: --- testing: '123 abc' << ' 123abc' ---
  327: string(20) "2d363731303838363430"
  328: --- testing: '123 abc' << '123 abc' ---
  329: string(20) "2d363731303838363430"
  330: --- testing: '123 abc' << '123abc ' ---
  331: string(20) "2d363731303838363430"
  332: --- testing: '123 abc' << '3.4a' ---
  333: string(6) "393834"
  334: --- testing: '123 abc' << 'a5.9' ---
  335: string(6) "313233"
  336: --- testing: '123abc ' << '0' ---
  337: string(6) "313233"
  338: --- testing: '123abc ' << '65' ---
  339: string(6) "323436"
  340: --- testing: '123abc ' << '-44' ---
  341: string(18) "313238393734383438"
  342: --- testing: '123abc ' << '1.2' ---
  343: string(6) "323436"
  344: --- testing: '123abc ' << '-7.7' ---
  345: string(20) "2d313637373732313630"
  346: --- testing: '123abc ' << 'abc' ---
  347: string(6) "313233"
  348: --- testing: '123abc ' << '123abc' ---
  349: string(20) "2d363731303838363430"
  350: --- testing: '123abc ' << '123e5' ---
  351: string(20) "2d363731303838363430"
  352: --- testing: '123abc ' << '123e5xyz' ---
  353: string(20) "2d363731303838363430"
  354: --- testing: '123abc ' << ' 123abc' ---
  355: string(20) "2d363731303838363430"
  356: --- testing: '123abc ' << '123 abc' ---
  357: string(20) "2d363731303838363430"
  358: --- testing: '123abc ' << '123abc ' ---
  359: string(20) "2d363731303838363430"
  360: --- testing: '123abc ' << '3.4a' ---
  361: string(6) "393834"
  362: --- testing: '123abc ' << 'a5.9' ---
  363: string(6) "313233"
  364: --- testing: '3.4a' << '0' ---
  365: string(2) "33"
  366: --- testing: '3.4a' << '65' ---
  367: string(2) "36"
  368: --- testing: '3.4a' << '-44' ---
  369: string(14) "33313435373238"
  370: --- testing: '3.4a' << '1.2' ---
  371: string(2) "36"
  372: --- testing: '3.4a' << '-7.7' ---
  373: string(18) "313030363633323936"
  374: --- testing: '3.4a' << 'abc' ---
  375: string(2) "33"
  376: --- testing: '3.4a' << '123abc' ---
  377: string(18) "343032363533313834"
  378: --- testing: '3.4a' << '123e5' ---
  379: string(18) "343032363533313834"
  380: --- testing: '3.4a' << '123e5xyz' ---
  381: string(18) "343032363533313834"
  382: --- testing: '3.4a' << ' 123abc' ---
  383: string(18) "343032363533313834"
  384: --- testing: '3.4a' << '123 abc' ---
  385: string(18) "343032363533313834"
  386: --- testing: '3.4a' << '123abc ' ---
  387: string(18) "343032363533313834"
  388: --- testing: '3.4a' << '3.4a' ---
  389: string(4) "3234"
  390: --- testing: '3.4a' << 'a5.9' ---
  391: string(2) "33"
  392: --- testing: 'a5.9' << '0' ---
  393: string(2) "30"
  394: --- testing: 'a5.9' << '65' ---
  395: string(2) "30"
  396: --- testing: 'a5.9' << '-44' ---
  397: string(2) "30"
  398: --- testing: 'a5.9' << '1.2' ---
  399: string(2) "30"
  400: --- testing: 'a5.9' << '-7.7' ---
  401: string(2) "30"
  402: --- testing: 'a5.9' << 'abc' ---
  403: string(2) "30"
  404: --- testing: 'a5.9' << '123abc' ---
  405: string(2) "30"
  406: --- testing: 'a5.9' << '123e5' ---
  407: string(2) "30"
  408: --- testing: 'a5.9' << '123e5xyz' ---
  409: string(2) "30"
  410: --- testing: 'a5.9' << ' 123abc' ---
  411: string(2) "30"
  412: --- testing: 'a5.9' << '123 abc' ---
  413: string(2) "30"
  414: --- testing: 'a5.9' << '123abc ' ---
  415: string(2) "30"
  416: --- testing: 'a5.9' << '3.4a' ---
  417: string(2) "30"
  418: --- testing: 'a5.9' << 'a5.9' ---
  419: string(2) "30"
  420: ===DONE===
  421: 

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