2011-11-19 76 views
-1

說我有以下,這是有效的代碼? -隱藏課程代碼?

<?php 

include_once('HelloWorld.class.php'); // contains class 'HelloWorld' 

class user 
{ 
    function hello() { 
     $HelloWorld = new HelloWorld; //Loads HelloWorld class into variable 
     $HelloWorld->hello(); // calls hello function 
    } 
} 


$go = new user; // loads user class into variable 
$go->hello(); // calls user 'hello' function, which in turns utilizes 'HelloWorld' class 


?> 

基本上,「用戶」類使用另一個類。

我所試圖實現 -

  • 我想使「用戶」級有人(或許通過GUI)訪問和編輯。他們可以以他們認爲合適的方式編輯「用戶」類。但是,我不希望他們能夠查看「HelloWorld.class.php」的來源。這可能嗎?

他們只是能夠檢索內容? -

$lines = file("*path*\HelloWorld.class.php"); 
+1

每次你調用'hello()'時,重新初始化'$ HelloWorld' *有點多餘,你不覺得嗎? – Blender

+2

*爲什麼*你不想讓他們看到HelloWorld類的代碼?如果你讓別人自由地編寫代碼,幾乎所有的投注都關閉。 – deceze

+0

混淆是唯一的選擇嗎? – user1054908

回答

1

是的,但你也可以單獨編寫你的引擎並嵌套它,然後讓你的公共類擴展引擎。不需要所有這些類實例化其他類,以避免無論你正在避免什麼。

我同意其他人的冗餘,以及您讓任何人修改您網站上的任何課程的事實。除非你是Johnny McSuper-Coder,否則你不會想要處理你需要寫入基於用戶的更新腳本的安全規定,以防止他們以任何可能的方式破壞所有的東西。

我敢打賭,一些體面的計劃會爲您的最終目標揭示更多更好的選擇。如果你一般發佈一個關於如何去做任何事情的問題,不太清楚SO社區會如何感受。

+0

Johnny McSuper-Coder +1 – vascowhite