美文网首页
php函数 字符串类型

php函数 字符串类型

作者: 爱折腾的傻小子 | 来源:发表于2018-10-29 11:03 被阅读14次
    字符串Path
    • dirname():返回路径中的目录部分。
      • //> 返回去掉文件名后的目录名
        string dirname(string $path)
        
      • path:路径(在 Windows 中,斜线(/)和反斜线(\)都可以用作目录分隔符。在其它环境下是斜线(/))
      • 返回值:字符串;返回path的父目录;
        • 如果在 path 中没有斜线,则返回一个点('.'),表示当前目录;否则返回的是把 path 中结尾的 /component(最后一个斜线以及后面部分)去掉之后的字符串。
    //> D:\WWW\php\index.php --> D:\WWW\php
    $path = "D:\WWW\php\index.php";
    echo dirname( $path );
    //> 如果文件中没有斜线,则返回 . (点)
    //> index.php --> .
    echo dirname( 'index.php' );
    //> 处理后的字符串中没有斜线,系统会自动保留一个
    //> c:/www --> c:/
    echo dirname( 'c:/www' );
    //> /mut/usr/ --> /mut
    echo dirname( '/mut/usr' );
    

    总结

    1.dirname 处理一个路径字符串(path),返回一个字符串。 2.如果path是一个路径,返回上级目录。
    3.如果path中没有斜线,则返回 **.** 。 4.如果path中只有一个斜线,经过dirname后,该斜线被保留。

    • str_replace():字符串替换。
    mixed str_replace(mixed $search, mixed $replace, mixed $subject [,int &$count])
    
    • 该函数返回一个字符串或数组。(该字符串或数组是将 subject 中全部的 search 都被 replace 替换之后的结果。 )
    $bodytag = str_replace ( "%body%" , "black" , "<body text='%body%'>" , $count);
    //> "<body text='%body%'>" --> "<body text='black'>"
    var_dump( $bodytag );
    //> 替换次数 $count => 1
    echo $count;
    
    $re = ['as','a','q','d'];
    //> 'asqdfeqasdfa' --> ---fe---f-
    echo str_replace( $re, '-', 'asqdfeqasdfa', $aount );
    //> 替换次数 7
    echo $aount;
    
    $re = ['as','a','q','d'];
    $se = [' $1 ',' $2 ',' $3 ',' $4 '];
    //> 'asqdfeqasdfa' --> '1 $1 $3 $4 fe $3 $1 $4 f $2 7'
    echo str_replace( $re, $se, 'asqdfeqasdfa', $aount );
    //> 替换次数 7
    echo $aount;
    
    //> 替换从左到右依次 A -> B -> C -> D -> E -> F
    $search   = array( 'A' ,  'B' ,  'C' ,  'D' ,  'E' );
    $replace  = array( 'B' ,  'C' ,  'D' ,  'E' ,  'F' );
    $subject  =  'A' ;
    //> '' --> 'F'
    echo  str_replace ( $search ,  $replace ,  $subject );
    

    IP相关转换函数
    • ip2long():IPV4转换为int类型。(该函数转换的一般是无符号数)
    //> ip2long 函数的定义
    int ip2long(string $ip_address)
    
    <?php
    //> 如果IPV4地址格式不正确,返回 false
    var_dump( ip2long('') ); //> false
    //> 255.255.255.255 转换为 -1
    echo ip2long( '255.255.255.255' ); //> -
    //> 192.168.1.1 转换为 -1062731519
    echo ip2long( '192.168.1.1' );
    //> 如果我们想得到无符号数 使用sprintf函数
    $ipAddress = sprintf('%u', ip2long('192.168.1.1')); //> %u表示无符号
    echo long2ip( $ipAddress );  //> long2ip 把$ipAddress转换为IPV4的格式
    ?>
    
    • sprintf():函数,格式转换函数。
    //> $format 需要格式的字符串;
    //> 可选格式变量,和python中的print使用基本相同。
    string sprintf(string $format [,mixed $args [, mixed $...]])
    
    • long2ip():是ip2long函数的反向操作。
    string long2ip(string $proper_address)
    
    * 0 会被解析成 0.0.0.0
    * false 也会被解析成 0.0.0.0
    * -1 被解析成 255.255.255.255
    

    字符串输出函数
    • print:输出一个字符串。(语言结构)
    >>  int print( string $arg )
    
    • 返回值:永远是 1
    <?php
          print("hello"); //> hello
          //> 语言结构书写方法
          print "world"; //> world
    ?>
    
    • echo:输出一个或多个字符串。(语言结构)
    >>  void echo( string $arg [, string $...] )
    
    <?php
        echo "hello", 'world', '<br>';
    ?>
    
    • 在PHP5.4.0之后,echo支持如下写法。
      <?="hello"?>  //> echo "hello";
      
    • 在PHP5.4.0之前,需要在php.ini中启用 short_open_tag

    总结
    * print 和 echo 都是输出字符串,都是php的语言结构。
    * print 输出的是一个字符串;
    * echo 输出的是一个或多个字符串;


    字符串格式化函数
    • printf():输出格式化字符串,并返回字符串的长度。
    >>  int printf(string $format [,mixed $args [, mixed $....]])
    
    <?php
        //> Php_Python,520
        $len = printf('%s,%d',"Php_Python", 520);
        //> 14
        echo "<br>",$len;
    ?>
    
    • sprintf():返回格式化的字符串。(用法基本和 printf 一致)
    //> 该函数不会像printf一样,格式化后直接打印出来
    //> 而是直接把格式化的字符串返回。
    >>  string sprintf(string $format [,mixed $args [,mixd $...]])
    
    $len = sprintf('%s,%d',"Php_Python", 520);
    echo "<br>",$len; //> Php_Python,520
    

    总结
    * printf() 和 sprintf() 都是格式化字符串函数,用法基本相同。
    * printf() 函数在格式化字符串后,直接输出,并返回格式化后的字符串长度。
    * sprintf() 函数直接返回格式化后的字符串。(不会再页面打印)


    数组相关的打印函数
    • print_r():打印关于变量的易于理解的信息。
    bool print_r(mixed $expression [, bool $return])
    
    • 该函数只能打印一个变量。
    • print_r()会将数组的指针移动到最后边。(可以使用reset()函数让指正回到开始位置)
    • $return参数:为True时,print_r()将不打印结果,而是返回其输出。
    $arr = ['p'=>'PHP','py'=>'python','c'=>'C'];
    $k = print_r($arr, True);
    //> 可见设置第二个参数,print_r就不会打印,直接以字符串的形式返回
    var_dump( $k );
    

    输出结果:

    'Array( [p] => PHP [py] => python [c] => C)'
    (length=57)
    
    • var_dump():打印一个或多个变量
    >>  void var_dump( mixed $expression [, mixed $...] )
    
    • var_export():返回或输出可执行的PHP代码。(字符串形式)

    相关文章

      网友评论

          本文标题:php函数 字符串类型

          本文链接:https://www.haomeiwen.com/subject/kiijpttx.html