我开始开发一些东西(自我托管--每个用户在他们的服务器上安装它--可能是共享服务器),允许用户上传他人的代码(插件)。
我担心的一个问题是插件更改核心文件。
应用程序的流程如下所示:
index.php
> Core()
> (do stuff)
> load/execute plugins <- may have code to replace a Core file
> (do stuff)
> exit
我试图限制插件对文件或php函数的访问。如果插件只允许使用Core类/方法,那就太好了。
因为它是自我托
我遵循了几个关于php OOP的教程,以及如何使用get/set函数,但是不能让我的函数来设置类属性。我简化了我的代码到最基本的部分,它仍然不能工作,但我不知道我做错了什么。 下面是我的类代码: <?php
// Declare the class
class averageWeather {
public $maxtemperatureforecast;
public function setAverageWeather() {
$averageWeather->maxtemperatureforecast = '7';
我在谷歌上搜索了很长时间。我想我遗漏了一些重要的概念,但我不明白为什么这不能工作
//SomeClass.php
class SomeClass
{
protected $something;
public function __construct() {
$this->something = 'password';
}
public function test() {
return ($this->something);
}
}
//OtherClass.php
require_once(&
我试图通过Ajax在PHP类中发送POST值,以更改SQL查询。
Page
//Link page with Classes
require_once('mPortfolio.php');
$mPortfolio = new Portfolio();
$all = $mPortfolio->getAll();
//Echo sql results here
//AJAX to send filter value to PHP with Classes
$('#filters a').on('click'
file1:
<?php
function done() {
require_once '/home/vendor/autoload.php';
use Qiniu\Auth;
use Qiniu\Storage\UploadManager;
#omitted
}
?>
file2
<?php
require_once '/home/vendor/autoload.php';
use Qiniu\Auth;
use Qiniu\Sto
我将ActionScript2.0与PHP结合使用,现在我可以调用PHP文件并接收数据,但显然我必须立即使用这些数据,我不能用它来填充我的类变量。
这就是我想要的:
class user {
var lastname:String;
function user(in_ID:Number){
var ontvang:LoadVars = new LoadVars();
var zend:LoadVars = new LoadVars();
zend.ID = in_ID;
zend.sendAndLoad("http:/
调用php -l检查php文件的语法。
是否有一种检查未定义函数的方法?--我不需要它来处理在运行时定义的函数--或带有动态调用的。
调用该文件显然不能工作,:我需要检查整个文件,而不仅仅是执行的分支。看下面的例子。
myfile.php:
function imhere () {}
main.php:
require_once 'myfile.php';
if (true) {
imhere();
}
else {
imnhothere(); // I need to get a warning about this
}
不幸的是,在php /nginx配置上调用php exit()并不会立即停止脚本,而文件句柄可能不会关闭。
一些开发人员建议调用fastcgi_finish_request(),但这并不能阻止脚本。
其他人建议将所有代码包装在catch块中:
<?php
class SystemExit extends Exception {}
try {
/* PUT ALL THE CODE HERE */
} catch (SystemExit $e) { /* do nothing */ }
?>
并在需要停止代码的情况下抛出异常:
if (SOME_
我正在做一个简单的聊天脚本,我有一个killSession函数,它杀死当前会话并从DB中删除用户。问题是,在设置名称并验证聊天表单不加载之后,它只会终止会话并返回到loginForm()。下面是剧本:
<?php
if (!isset($_SESSION['name'])) {
loginForm(); // set a name for chat
} else {
?>
// chat form
$(window).unload(function () {
<?php killSession(); ?>
我正在尝试第一次设置错误处理。
它确实可以正常工作并报告错误,但由于某些原因,它总是为错误处理函数本身显示“缺少参数”的错误。请注意,我的错误处理函数在一个单独的文件中,并包含在索引页面中,我不确定这是否是问题所在:S
下面是我的错误处理函数
function errorHandler($errno, $errstr, $error_file, $error_line) {
if(isset($errstr)) {
# There is an error, display it
echo $errno." - ".$errstr." in "