假设我有一个Windows路径名“E:\ Dropbox \ b \ c \ d”,当我想通过一些修改将此路径更改为UNIX时,我可以使用此python代码。
x = "E:\\Dropbox\\b\\c\\d"
print "/Users/prosseek/" + '/'.join(x.split('\\')[1:])
>> /Users/prosseek/Dropbox/b/c/d
PHP中的等效代码是什么?
答案 0 :(得分:2)
$str = "E:\Dropbox\b\c\d";
$unix = str_replace('E:', '/Users/prosseek', $str);
$unix = str_replace('\\', '/', $unix);
答案 1 :(得分:2)
你走了。你可以使用explode
和implode
,但是当这只是一个基本的字符串操作时,没有真正的理由可以使用数组:
$x = 'E:\Dropbox\b\c\d';
echo '/Users/prosseek/' . str_replace('\\', '/', substr($x, strpos($x, '\\') + 1));
答案 2 :(得分:1)
与Python代码完全相同的是:
$x = 'E:\\Dropbox\\b\\c\\d';
echo "/Users/prosseek" . implode('/', explode('\\', substr($x, 2)));
答案 3 :(得分:1)
如果您正在寻找完全 PHP等价物:
$x = 'E:\Dropbox\b\c\d';
$parts = explode('\\', $x);
array_shift($parts);
print "/Users/prosseek/" . implode('/', $parts);
然而,这样做而不是创建你想要的输出。 Demo