开发者

Problem converting path string from "/", "\"

开发者 https://www.devze.com 2022-12-24 16:24 出处:网络
i got this code $current_path = str_replace(\'\\\', \'/\', getcwd()); //c://xampp/htdoc Why it fail replace\'\\\' with \'/\' in directory patch ? why is the reason and how to handle this problem ?

i got this code

$current_path = str_replace('\', '/', getcwd()); //c://xampp/htdoc

Why it fail replace '\' with '/' in directory patch ? why is the reason and how to handle this problem ?

EDIT Thi开发者_运维问答s code use to return path (or something like that) use with HTML TAG base.



$current_path = getcwd();

function get_basepath() { 
    global $current_path; 

    $current_path  = str_replace('\\', '/', $current_path );                        // C:\xampp\htdocs\php\gettingstarted  

    $cur_root = $_SERVER['HTTP_HOST'];              // localhost
    $cur_docroot = $_SERVER['DOCUMENT_ROOT'];       // C:/xampp/htdocs/
    $cur_filepath = $_SERVER['SCRIPT_FILENAME'];    // C:/xampp/htdocs/php/gettingstarted/index.php 
    $filepath = str_replace($cur_docroot, '', $current_path);

    return "http://$cur_root/" . $filepath . "/";       // http://localhost/php/gettingstarted/index1.php 
} 


You need to use a double \ since the \ escape the next character. :)

$current_path = str_replace('\\', '/', getcwd());


Use \\ in place of \ as:

 $current_path = str_replace('\\', '/', getcwd()); 

\ is used to escape a char with special meaning. Now \ itself is a char with special meaning so escape it with another \ like \\ to get a literal .


That's PHP string syntax question and you don't need this replacement at all.


$current_path = str_replace('\\', '/', getcwd()); //c://xampp/htdoc
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号