- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我使用 1.10 构建了一个 ZF 应用程序,用于部署在公司客户端的 RHEL 服务器上,该客户端具有 PHP 5.1.6。它不会运行。
我用谷歌搜索了一下,现在意识到这是 PHP 的版本。我没有意识到 ZF 对 PHP 5.2.4 有最低要求,调用 HeadLink 似乎导致了 fatal error “调用未定义的方法 Zend_View_Helper_Placeholder_Container::ksort()”:
PHP Fatal error: Call to undefined method Zend_View_Helper_Placeholder_Container::ksort() in /library/ Zend/View/Helper/HeadLink.php on line 321
客户端不会升级他们的 PHP;我不想在没有 ZF 的情况下重写应用程序,我也不想将 ZF 降级到非常早的版本。
是否有一些补丁可以用来将 ksort() 添加到 ZF 1.10 来解决这个问题?可能还有其他问题,但这就是我现在卡住的地方。
欢迎任何建议
非常感谢
伊恩
编辑:正如我在下面的评论中所说,我希望很多人以前都遇到过这个问题并将继续这样做,因为 RHEL5 将成为企业环境中的标准,这是一个很好的时机。我希望有一个指向现有解决方案的链接,而不必从头开始设计。
更新:我使用了已接受答案中链接的补丁,它为我解决了问题。
这是将以下公共(public)方法添加到 Zend/View/Helper/Placeholder/Container/Abstract.php
/**
* Sort the array by key
*
* @return array
*/
public function ksort()
{
$items = $this->getArrayCopy();
return ksort($items);
}
还有一个问题;由 Zend_View_Helper_Doctype 中的字符串转换引起的 PHP 通知。将此功能与上下类似的功能进行比较,这似乎是库中的错误
public function isHtml5() {
return (stristr($this->doctype(), '<!DOCTYPE html>') ? true : false);
}
更改为:
public function isHtml5() {
return (stristr($this->getDoctype(), '<!DOCTYPE html>') ? true : false);
}
修补库本身是我通常做的最后一件事,但在这种情况下,它让我不知所措。我们将确保补丁在存储库中进行版本控制,并为 future 的开发人员明确记录。
最佳答案
我今天遇到了同样的问题。我在这个 blog post 中找到了解决方案.
在/Zend/View/Helper/Placeholder/Container/Abstract.php 中添加以下片段:
/**
* Sort the array by key
*
* @return array
*/
public function ksort()
{
$items = $this->getArrayCopy();
return ksort($items);
}
关于php - 在 PHP 5.1.6 上运行 Zend Framework - ksort() 的补丁或修复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3358869/
在我的测试服务器上修复我的 PHP 应用程序后,我将它推送到我的生产服务器,但修复没有起作用。追踪之后,我发现 ksort() 仅在我的生产服务器上导致索引键溢出大于最大 32 位带符号值 (2147
'7833', 'd'=>'1297', 'c'=>'341', '1'=>'67', 'b'=>'225', '3'=
这个问题在这里已经有了答案: ksort produces wrong result when dealing with alphanumeric characters (6 个答案) 关闭 4 年
我有一个数组,其中键是葡萄牙语中的单词,我试图在不考虑重音的情况下对键进行排序。 我有以下代码,但它不起作用。 $array = array('ábaco' => 1,
我有一个问题所以我有这个数组: Array ( [2016] => Array ( [23] => Array ( [t
我有一个这样的数组: Array( [31] => 1 [30] => 2 [29] => 3 [28] => 4 ) 然后我使用 ksort($array) 将其排序
周末我用 preg_replace 做了一些工作,我正在阅读 Php preg_replace documentation当我看到奇怪的东西时。 文档中的示例 #2 显示,当给出以下 php 代码时
我从没想过我会问这个...我需要一种在 C# 中模仿 PHP 的 ksort 函数的方法。 这就是问题所在...PHP 这样做... PHP 代码 $arr = array( "tagValu
我使用 1.10 构建了一个 ZF 应用程序,用于部署在公司客户端的 RHEL 服务器上,该客户端具有 PHP 5.1.6。它不会运行。 我用谷歌搜索了一下,现在意识到这是 PHP 的版本。我没有意识
我是一名优秀的程序员,十分优秀!