`new`和`use`关键字路径

问题描述 投票:7回答:2

我在使用php 5.2的主机公司,我使用的一些库是用5.3编写的,代码之间存在某些不兼容性。

首先,替代方案是什么:

use \folder1\folder2\class_file;

其次是什么是替代方案:

$sample = new \folder1\folder2\class_file($arg1, arg2);

提前致谢。

php namespaces new-operator slash php-5.2
2个回答
13
投票

命名空间不向后兼容PHP <5.3

你将不得不:

  • 删除namespaceuse语句的所有案例
  • 将您的班级从class_file重命名为folder1_folder2_class_file(或类似)
  • 使用$sample = new folder1_folder2_class_file($arg1, $arg2);创建一个实例

7
投票

我会说这取决于PHP 5.3代码的数量,以及你的项目每月价值超过5美元。

我的主要建议是:更改您的托管服务提供商。

如果他们不提供PHP 5.3,那么在2009年6月30日发布的PHP版本(那两年!)你最好不要浪费时间试图让你的项目在那里运行。

5.3已经足够成熟,可以用于生产,5.2已达到其生命周期的终点(end of support for php 5.2 branch)。

不要因为某些托管公司而浪费你的时间来创建一个“旧的”应用程序。

© www.soinside.com 2019 - 2024. All rights reserved.