Python有一个PHP等价函数吗?
或者我怎样才能得到正好在PHP中的相同功能?是否有Python的os.path.normpath()的等价函数?
6
A
回答
6
这里是我的1:1 normpath()方法的重写从Python的posixpath.py在PHP中:
function normpath($path)
{
if (empty($path))
return '.';
if (strpos($path, '/') === 0)
$initial_slashes = true;
else
$initial_slashes = false;
if (
($initial_slashes) &&
(strpos($path, '//') === 0) &&
(strpos($path, '///') === false)
)
$initial_slashes = 2;
$initial_slashes = (int) $initial_slashes;
$comps = explode('/', $path);
$new_comps = array();
foreach ($comps as $comp)
{
if (in_array($comp, array('', '.')))
continue;
if (
($comp != '..') ||
(!$initial_slashes && !$new_comps) ||
($new_comps && (end($new_comps) == '..'))
)
array_push($new_comps, $comp);
elseif ($new_comps)
array_pop($new_comps);
}
$comps = $new_comps;
$path = implode('/', $comps);
if ($initial_slashes)
$path = str_repeat('/', $initial_slashes) . $path;
if ($path)
return $path;
else
return '.';
}
这将工作完全相同一样在Python
os.path.normpath()
2
是的,realpath
命令将返回一个规范化的路径。它类似于Python的os.path.normpath
和os.path.realpath
的组合版本。
但是,它也会解析符号链接。如果你不想要这样的行为,我不确定你会怎么做。
相关问题
- 1. 是否有Python的map函数的Java等价物?
- 2. 在MATLAB中是否有等价的Python范围函数?
- 3. fortran中的Btest函数,python中是否有任何等价物?
- 4. 是否有GetProperty或等价函数?
- 5. 是否有Python的Term :: ANSIScreen等价物?
- 6. 是否有“python -i”的ruby等价物?
- 7. Python是否与Haskell的'mask'或'bracket'函数等价?
- 8. 在Python中是否有Rake等价物?
- 9. Filehelpers,Super CSV:是否有Python等价物?
- 10. 是否有与Stata中Excel的COUNTIFS函数等价的功能?
- 11. 是否有FreeBSD的make_dev()函数的OS X等价物?
- 12. jQuery中是否有与PHP的array_column()等价的函数?
- 13. Dojo中是否有等价的jQuery的add()函数?
- 14. #define是否等价于一个函数?
- 15. 是否有C#等价于VB6的Choose()函数?
- 16. PHP:是否有一个isLetter()函数或等价的?
- 17. Python的等价物的MATLAB psf2otf函数
- 18. Python的等价于R的logspace_add函数?
- 19. JavaScript是否与Python的__getattribute__等价吗?
- 20. Python等价于Ruby的包函数
- 21. python中的perror等价函数
- 22. 是否有等价的集合的java.util.Properties?
- 23. Rust是否具有与Python的unichr()函数等效的功能?
- 24. 是否有Python的defaultdict的Java等价物?
- 25. 是否有一个模块等价于node.js的Python的argparse?
- 26. 是否有Python的makedirs()的FTP等价物?
- 27. 是否有等价函数fminbnd最大值?
- 28. NSObject类中是否有任何viewWillAppear等价函数?
- 29. rubinius是否有等价的isitruby19?
- 30. GDL中是否有等价的FSC_COLOR?
PHP的实际路径更像os.path.abspath()或os.path.realpath() – VolkerK 2010-04-19 19:48:38
@Gordon的等价物:PHP的实际路径更像Python的os.path.normpath和os.path的组合版本。真实路径。 – Powerlord 2010-04-19 19:50:31
我认为这是最接近'os.path.normpath()'功能。无论是这个还是那里都没有(至少)内置函数。这取决于OP真正需要什么...... – 2010-04-19 19:51:59