php 代码逻辑(按版本)
php code logic by version
我想要一个类似这样的解决方案:假设我有 try catch
块,它可以在任何 php 5.?.?版本但 finally
块不在任何。我的代码必须是这样的:
try {
// some logic
} catch (Exception $ex) {
// some logic
} finally {
// other logic
}
但是,我怎样才能让 finally 块只有在 php 版本支持时才起作用,否则忽略?例如:
try {
// some logic
} catch (Exception $ex) {
// some logic
}
#if version=5.?.?
finally {
// other logic
}
#endif
有什么解决办法吗?
对不起,我很困惑:)
check this
你可以在尝试捕获之前检查 php版本
if(php 版本 == 5.5 或更高版本)
你终于做到了
否则你没有finally
是的。
phpversion() 将 return php 版本的字符串。 (示例:“5.6.14”)
您可以使用它来设置条件语句。
您可以通过phpversion method获取php版本。您唯一的选择是编写一个 if 语句来检查它;如果它支持写入整个 try-catch-finally 块。如果没有,只写try-catch。您可以使用内联函数来防止重复代码。我不知道为什么有人需要这个,但是例如;
function fncTry(){...}
function fncCatch($exception){...}
function fncFinally(){...}
if($phpVersion == '5.5'){
try { fncTry(); }
catch(Exception $ex) { fncCatch($ex); }
finally { fncFinally(); }
}else{
try { fncTry(); }
catch(Exception $ex) { fncCatch($ex); }
fncFinally();
}
我想要一个类似这样的解决方案:假设我有 try catch
块,它可以在任何 php 5.?.?版本但 finally
块不在任何。我的代码必须是这样的:
try {
// some logic
} catch (Exception $ex) {
// some logic
} finally {
// other logic
}
但是,我怎样才能让 finally 块只有在 php 版本支持时才起作用,否则忽略?例如:
try {
// some logic
} catch (Exception $ex) {
// some logic
}
#if version=5.?.?
finally {
// other logic
}
#endif
有什么解决办法吗?
对不起,我很困惑:)
check this
你可以在尝试捕获之前检查 php版本
if(php 版本 == 5.5 或更高版本)
你终于做到了
否则你没有finally
是的。
phpversion() 将 return php 版本的字符串。 (示例:“5.6.14”)
您可以使用它来设置条件语句。
您可以通过phpversion method获取php版本。您唯一的选择是编写一个 if 语句来检查它;如果它支持写入整个 try-catch-finally 块。如果没有,只写try-catch。您可以使用内联函数来防止重复代码。我不知道为什么有人需要这个,但是例如;
function fncTry(){...}
function fncCatch($exception){...}
function fncFinally(){...}
if($phpVersion == '5.5'){
try { fncTry(); }
catch(Exception $ex) { fncCatch($ex); }
finally { fncFinally(); }
}else{
try { fncTry(); }
catch(Exception $ex) { fncCatch($ex); }
fncFinally();
}