问题标签 [php-5.3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 为什么当我遍历这个数组两次时 PHP 会覆盖值(按引用,按值)
如果我遍历一个数组两次,一次是按引用,然后是按值,如果我为每个循环使用相同的变量名,PHP 将覆盖数组中的最后一个值。最好通过一个例子来说明这一点:
输出:
数组( [0] => 2 [1] => 4 [2] => 6 [3] => 8 [4] => 10)
数组( [0] => 2 [1] => 4 [2] => 6 [3] => 8 [4] => 8)
请注意,我不是在寻找解决方法,而是想了解为什么会发生这种情况。另请注意,如果每个循环中的变量名不是每个都被调用,则不会发生这种情况$element
,所以我猜这与$element
仍在范围内和第一个循环结束后的引用有关。
php - 从文件描述符中获取文件指针
在 PHP 5.2.3 中,“fdopen”用于读取/写入由另一个应用程序打开的文件描述符。
将 PHP 升级到 5.3.2 后,它会抛出“ undefined reference to 'fdopen' function
”。
请建议在 PHP 5.3.2 或任何解决方法中对此的替代品。
php - PHP:如何为局部函数变量实现类 __get 方法
我对 __get() 并不陌生,过去曾用它制作一些非常方便的库。然而,我面临着一个新的挑战(PHP 5.3,为这个问题缩写并简化了我的代码):
上面是一个非常非常简化的加载视图的系统。此代码将调用视图并显示它:
我对这段代码的目标是允许视图“myview.php”包含这样的代码:
并且,与上面的代码一起使用,这将输出“Hello Tom!您的电子邮件是??电子邮件??”
但是,这行不通。视图包含在类方法中,因此当它引用 $user 和 $email 时,它正在寻找本地函数变量——而不是属于 View 类的变量。因此,__get 永远不会被触发。
我可以将视图的所有变量更改为 $this->user 和 $this->email 之类的东西,但这将是一个混乱且不直观的解决方案。我很想找到一种方法,可以在使用未定义变量时直接引用变量而不会让 PHP 抛出错误。
想法?有没有一种干净的方法可以做到这一点,还是我被迫求助于骇人听闻的解决方案?
php - 忘记后期静态绑定,我需要后期静态 __FILE__
我正在寻找get_called_class()
类似的__FILE__
东西......也许像get_included_file()
?
我有一组类想知道它们存在于哪个目录中。像这样:
在其他文件中,在其他文件夹中...
现在,我可以做一些 ghetto 的事情,比如添加$this->baseDir = dirname(__FILE__)
到每个扩展类,但这似乎有点……ghetto。毕竟,我们谈论的是 PHP 5.3,对吧?这不应该是未来吗?
是否有另一种方法来获取声明类的文件的路径?
symfony - Symfony 2.0 - routing
How can I set up routing in symfony to be like that(if one rule won't work, next should be grabbed):
- /controller/action/param/param/param/...
- /admin/controller/action/param/param/param/... ("admin" is constant here - name of the bundle)
I tried that:
But it doesn't work, even for the first rule. Sorry for my English, and thanks for any future help ;>.
php - 使用 xdebug 时未捕获的异常
我对 xdebug 不太了解,所以如果这是一个愚蠢的问题,请原谅我。但我将它安装在一台单独的机器上,它为我执行了一些魔法,比如格式化我的 var_dump() 输出并捕获任何未捕获的异常。它也无法格式化堆栈跟踪,输出极难阅读的纯文本。
当我学习 Lithium PHP 框架时,我需要使用 php5.3,在我从源代码编译的另一台机器上,但在这台机器上我使用来自 dotdeb.org 的预编译包。据我所知,唯一的区别是这是一个稍新的 php 版本,它带有 Suhosin 补丁。
另一件奇怪的事情是 xdebug 函数(例如 xdebug_var_dump() )除了格式不正确之外还可以工作。
这是一台 Ubuntu 机器,所以我不知道它是否与 dotdep 软件包有关,但我已经通过 pecl、可下载的 tarball 和 SVN 存储库安装了 xdebug。但无济于事。
您可以在以下要点中看到我的 php.ini 和 php -i 的输出。我将 php.ini 从 /etc/php5/apache2/php.ini 复制到 /etc/php5/cli/php.ini 所以 php -i 应该反映我的 apache 设置。
php - MySQL 连接尝试在 5.2.9 中工作正常,但在 5.3.0 中无法正常工作 - 帮助?
我无法在我的代码中建立辅助 MySQL 连接(到单独的外部数据库)。它在 PHP 5.2.9 中运行良好,但在 PHP 5.3.0 中无法连接。我知道(至少有一些)在较新版本的 PHP 中建立成功的 MySQL 连接所需的更改,并且之前已经成功,所以我不确定为什么这次它不起作用。
我已经有一个到本地数据库的数据库连接。然后使用下面的这个函数来建立到一个单独的远程目录的附加连接。包含的配置文件仅包含外部数据库详细信息(主机、用户、密码和名称)。我已经检查并正确包含它。
然后我尝试通过在外部调用这个函数来建立这个新的连接:
但是在加载页面时(在 5.3.0 中),我收到消息:
我使用可选的new_link
布尔标志作为函数中的第四个参数,mysql_connect()
但它仍然不起作用。
今天早上我一直在绞尽脑汁想弄清楚为什么这个连接不起作用(虽然我在其他地方做了一些非常类似于另一个可以工作的单独的第二个数据库的事情)。任何帮助,将不胜感激。
谢谢!
富有的
php - get_class 的 PHP 问题
我正在做一个 Zend 项目,自从我接触 Zend 以来已经超过 12 个月了,我的一个功能出现错误,我无法弄清楚原因,我认为这可能取决于最初构建的站点在早期版本的 PHP (5.2) 中,我现在正在运行 5.3。
函数看起来像这样,
错误信息如下,
get_class() expects parameter 1 to be object, array given in /server/app/lib/View.php on line 449
关于这个问题的任何建议都会很好。
php - PHP 5.3 现在允许在编写内容后重定向?
我最近从 php 5.2 跳到 5.3,我注意到它现在允许在写入内容后重定向(即标题),大概是通过某种自动输出缓冲。
我曾经认为这很烦人……但这使得在开发过程中追踪错误变得更加困难。有没有办法在我的 php.ini 文件中关闭此选项?还是有一个令人信服的理由离开它,我会随着时间的推移学会期待这种行为?
postgresql - 围绕高度相关的 PostgreSQL 数据库构建网站的最佳 PHP 框架是什么?
首先,选择的框架需要对PostgreSQL有很好的支持。我不关心 MySQL,因为它没有我将要移植的应用程序所需的一半功能。(当我说出色的支持时,我的意思是他们对数据库驱动程序的方法并不仅仅在 MySQL 中接受过培训)。
理想的框架:
- 应该充分利用 PHP 5.3 和 PostgreSQL 8.4 的特性
- 应支持 OpenID 和社交网络等新技术
- 应该支持数据库关系之间的复杂关系
- 应该有一个智能验证系统
- 应该有一个基本的有用视图库(例如分页、导航等)
- 应该可能是基于 MVC
- 应该有优秀的文档和活跃的开发社区
- 应该智能地命名空间类
我正在寻找的可能更多的是实用程序库,因为我真的不想被框架限制在我能做什么和不能做什么上。我有自己的小型核心类库来处理业务逻辑,我很可能也希望将它们与新框架集成。
谢谢!