2011-08-16 14 views
7

Im en una compañía de host que usa php 5.2, algunas de las bibliotecas que uso están escritas en 5.3 y existen ciertas incompatibilidades entre el código.php 5.2 new and use keyword path problem

En primer lugar cuál es la alternativa a:

use \folder1\folder2\class_file; 

En segundo lugar ¿cuál es la alternativa a:

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

Gracias de antemano.

Respuesta

13

Los espacios de nombres son no compatible con PHP 5.3 <

Vas a tener que:

  • quitar todos los casos de namespace y use declaraciones
  • cambiar el nombre de sus clases de class_file a folder1_folder2_class_file (o similar)
  • use $sample = new folder1_folder2_class_file($arg1, $arg2); para crear una instancia e
7

Yo diría que depende de la cantidad de código PHP 5.3 y si su proyecto vale más de 5 dólares por mes para usted.

Mi sugerencia principal es: Cambiar su proveedor de hosting.

Si no ofrecen PHP 5.3, una versión de PHP en libertad a 30 de junio 2009 (que es dos años!) Que es mejor de no perder el tiempo tratando de conseguir su proyecto para funcionar allí.

5.3 es lo suficientemente maduro para ser utilizado en producción y 5.2 ha llegado al final de su ciclo de vida (end of support for php 5.2 branch).

Simplemente no pierdas tu tiempo creando una 'vieja' aplicación debido a alguna compañía de hosting.