php»ñÈ¡×Ö·û´®Ç°¼¸Î»µÄʵÀý(substr·µ»Ø×Ö·û´®µÄ×Ó´®Ó÷¨)

5年以前  |  阅读数:949 次  |  编程语言:PHP 

ÔÚʵ¼ÊÏiÄ¿Ó¦ÓÃÖУ¬¾­³£Óoµ½Ê¹ÓÃphp»ñÈ¡×Öu´®Ç°¼¸Î»ÓÃÀ´±È½Ï¡¢¸³ÖµµÈµÈ¡£½ñÌi¸ø´o¼ÒÖÏiʹÓÃphp substr »ñÈ¡×Öu´®Ç°¼¸Î»¡¢ºo¼¸Î»¡¢Ö¸¶¨Î»µÄÓè¡£

substr

(PHP 4, PHP 5)

substr ¡ª µ»Ø×Öu´®µÄ×Ó´®

˵Ã÷

string substr ( string $string , int $start [, int $length ] )

µ»Ø×Öu´® string ÓÉ start ºÍ length ²ÎÊýÖ¸¶¨µÄ×Ó×Ö*u´®¡£

²ÎÊý

string

ÊaÈe×Ö*u´®¡£

start

Èç¹u start ÊÇǸºÊý£¬µ»ØµÄ×Öu´®½«´Ó string µÄ start λÖÿªÊ¼£¬´Ó 0 ¿ªÊ¼¼ÆËa¡£ÀýÈ磬ÔÚ×Öu´® ¡°abcdef¡± ÖУ¬ÔÚλÖà 0 µÄ×ÖuÊÇ ¡°a¡±£¬Î»Öà 2 µÄ×Öu´®ÊÇ ¡°c¡± µÈµÈ¡£

Èç¹u start ÊǸºÊý£¬µ»ØµÄ×Öu´®½«´Ó string ½aβ´¦ÏoÇ°ÊýµÚ start ¸o×Ö*u¿ªÊ¼¡£

Èç¹u string µÄ³¤¶ÈСÓÚ»oµÈÓÚ start£¬½«*µ»Ø FALSE¡£

Example #1 ʹÓøºÊý start


    <?php
    $rest = substr(¡°abcdef¡±, -1); // *µ»Ø ¡°f¡±
    $rest = substr(¡°abcdef¡±, -2); // *µ»Ø ¡°ef¡±
    $rest = substr(¡°abcdef¡±, -3, 1); // *µ»Ø ¡°d¡±
    ?>

length

Èç¹uÌa¹(C)ÁËÕýÊýµÄ length£¬µ»ØµÄ×Öu´®½«´Ó start ´¦¿ªÊ¼×i¶a°uÀ¨ length ¸o×Ö*u£¨È¡¾oÓÚ string µÄ³¤¶È£(C)¡£

Èç¹uÌa¹(C)Á˸ºÊýµÄ length£¬ÄÇô string Ä(C)β´¦µÄÐi¶a×Öu½«»a±»Â(C)µo£¨Èo start ÊǸºÊýÔo´Ó×Öu´®Î²²¿ËaÆð£(C)¡£Èç¹u start ²»ÔÚÕa¶ÎÎı¾ÖУ¬ÄÇô½«µ»ØÒ»¸o¿Õ×Öu´®¡£

Èç¹uÌa¹(C)ÁËֵΪ 0£¬FALSE »o NULL µÄ length£¬ÄÇô½«µ»ØÒ»¸o¿Õ×Öu´®¡£

Èç¹uûÓÐÌa¹(C) length£¬µ»ØµÄ×Ó×Öu´®½«´Ó start λÖÿªÊ¼Ö±µ½×Ö*u´®½aβ¡£

Example #2 ʹÓøºÊý length


    <?php
    $rest = substr(¡°abcdef¡±, 0, -1); // *µ»Ø ¡°abcde¡±
    $rest = substr(¡°abcdef¡±, 2, -1); // *µ»Ø ¡°cde¡±
    $rest = substr(¡°abcdef¡±, 4, -4); // *µ»Ø ¡°¡±
    $rest = substr(¡°abcdef¡±, -3, -1); // *µ»Ø ¡°de¡±
    ?>

*µ»ØÖµ

µ»ØÌaÈ¡µÄ×Ó×Öu´®£¬ »oÕßÔÚʧ°Üʱ*µ»Ø FALSE¡£

¸uÐÂÈÕÖ¾°ae±¾ËµÃ÷

5.2.2 ¨C 5.2.6 If the start parameter indicates the position of a negative truncation or beyond, false is returned. Other versions get the string from start.

*¶Àý

*Example #3 substr() »u±¾Óè**


    <?php
    echo substr(¡®abcdef', 1); // bcdef
    echo substr(¡®abcdef', 1, 3); // bcd
    echo substr(¡®abcdef', 0, 4); // abcd
    echo substr(¡®abcdef', 0, 8); // abcdef
    echo substr(¡®abcdef', -1, 1); // f

    // *ÃÎÊ×Ö*u´®Öеĵ¥¸o×Ö*u
    // Ò²¿ÉÒÔʹÓÃÖÐÀ¨ºÅ
    $string = ¡®abcdef';
    echo $string[0]; // a
    echo $string[3]; // d
    echo $string[strlen($string)-1]; // f
    ?>

Example #4 substr() casting behaviour


    <?php
    class apple {
    public function __toString() {
    return ¡°green¡±;
    }
    }

    echo ¡°1) ¡°.var_export(substr(¡°pear¡±, 0, 2), true).PHP_EOL;
    echo ¡°2) ¡°.var_export(substr(54321, 0, 2), true).PHP_EOL;
    echo ¡°3) ¡°.var_export(substr(new apple(), 0, 2), true).PHP_EOL;
    echo ¡°4) ¡°.var_export(substr(true, 0, 1), true).PHP_EOL;
    echo ¡°5) ¡°.var_export(substr(false, 0, 1), true).PHP_EOL;
    echo ¡°6) ¡°.var_export(substr(¡°¡±, 0, 1), true).PHP_EOL;
    echo ¡°7) ¡°.var_export(substr(1.2e3, 0, 4), true).PHP_EOL;
    ?>

ÒÔÉÏÀý³Ì»aÊa³o£º

  1. ¡®pe'
  2. '54'
  3. ¡®gr'
  4. ¡®1'
  5. false
  6. false
  7. ¡®1200'

´iÎo/Òi³£

´iÎoʱ*µ»Ø FALSE¡£


    <?php
    var_dump(substr(¡®a', 1)); // bool(false)
    ?>

ÒÔÉÏÕaƪphp»ñÈ¡×Öu´®Ç°¼¸Î»µÄʵÀý(substrµ»Ø×Öu´®µÄ×Ó´®Óè)¾ÍÊÇС±a*ÖÏi¸ø´o¼ÒµÄÈ«²¿ÄÚÈÝÁË£¬Ï£ÍuÄܸø´o¼ÒÒ»¸o²Î¿¼£¬Ò²Ï£Íu´o¼Ò¶a¶aÖ§³Ö½Å±¾Ö®¼Ò¡£

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例