2017-05-29 7 views

答えて

0

あなたが言及した方法でコードを固定することは、Apacheの責任ではなく、あなたの責任で行ってください。 public/private/protectedキーワードは、外部から関数を呼び出すこととは関係ありません。それは他のオブジェクトによってプロジェクト内で呼び出すことです。 しかし、あなたは念頭に置いておく必要があります。人々は卑劣であり、あなたのシステムをハックし、あなたのフォームに(SQLインジェクションなどの)コードの一部を注入しようとします。このように理論​​的には、サーバ上でいくつかのコードを実行することができますが、私が知っている限り、eval()またはそれに類する機能を使用している場合にのみ可能です。これは通常の状況では発生しません。あなたが何らかのPHPサンドボックスを作成しようとしている場合に限ります。

0

メソッドへのアクセスが何らかのアクションによって使用されない限り、ユーザーはクラスのメソッドにアクセスできません。

if(isset($_REQUEST['iAllowThisToHappen'])){ 
    (new \MyClass)->runMyMethod(); 
} 

また、メソッドの可視性は、セキュリティPHP Methods visibilityとは関係ありません。

関連する問題