两个PHP第三方代码之间的命名空间冲突

时间:2017-03-15 06:50:43

标签: php

我目前正面临一个问题,因为__()方法已在其他地方宣布过。

这两种方法都来自PHP中的第三方库。

如果不直接更改库代码,我该怎么解决这个问题?

2 个答案:

答案 0 :(得分:0)

那么,IMO,很难不改变任何东西。您至少应该为其中一个第三个库定义命名空间。

请参阅http://php.net/manual/en/language.namespaces.php

这可以避免您的方法名称冲突。

答案 1 :(得分:0)

这很难做到,但根据使用情况,可能会这样做。

如果你有类似的代码:

 <RelativeLayout
      android:layout_width="match_parent"
      android:layout_height="match_parent">

    <VideoView
        android:id="@+id/videoView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true"
        android:layout_alignParentTop="true"
        android:fitsSystemWindows="true"
        />
    <ImageView
        android:layout_gravity="top|right"
        android:src="@android:drawable/ic_menu_close_clear_cancel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentRight="true" />
    </RelativeLayout> 

你可以在包含wordpress之前从laravel临时重命名include "something_laravel.php" //then include "something_wordpress.php"; 函数,类似于:

__()

根据您自己对__()函数的使用情况,您可以将其重命名或重命名。