本文目錄一覽:
PHP程序安裝報錯,怎麼解決,求教
主頁index.php代碼如下:
PHP code?
?php
require ‘lib/core/DBAccess.class’;
require ‘lib/core/Object.class’;
require ‘action/default/WebBase.class.php’;
require ‘action/default/WebLoginBase.class.php’;
require ‘config.php’;
//print_r($_SERVER);exit;
$para=array();
if(isset($_SERVER[‘PATH_INFO’])){
$para=explode(‘/’, substr($_SERVER[‘PATH_INFO’],1));
if($control=array_shift($para)){
if(count($para)){
$action=array_shift($para);
}else{
$action=$control;
$control=’index’;
}
}else{
$control=’index’;
$action=’main’;
}
}else{
$control=’index’;
$action=’main’;
}
$control=ucfirst($control);
if(strpos($action,’-‘)!==false){
list($action, $page)=explode(‘-‘,$action);
}
$file=$conf[‘action’][‘modals’].$control.’.class.php’;
if(!is_file($file)) notfound(‘找不到控制器’);
try{
require $file;
}catch(Exception $e){
print_r($e);
exit;
}
if(!class_exists($control)) notfound(‘找不到控制器1’);
$jms=new $control($conf[‘db’][‘dsn’], $conf[‘db’][‘user’], $conf[‘db’][‘password’]);
$jms-debugLevel=$conf[‘debug’][‘level’];
if(!method_exists($jms, $action)) notfound(‘方法不存在’);
$reflection=new ReflectionMethod($jms, $action);
if($reflection-isStatic()) notfound(‘不允許調用Static修飾的方法’);
if(!$reflection-isFinal()) notfound(‘只能調用final修飾的方法’);
$jms-controller=$control;
$jms-action=$action;
$jms-charset=$conf[‘db’][‘charset’];
$jms-cacheDir=$conf[‘cache’][‘dir’];
$jms-setCacheDir($conf[‘cache’][‘dir’]);
$jms-actionTemplate=$conf[‘action’][‘template’];
$jms-prename=$conf[‘db’][‘prename’];
$jms-title=$conf[‘web’][‘title’];
if(method_exists($jms, ‘getSystemSettings’)) $jms-getSystemSettings();
if($jms-settings[‘switchWeb’]==’0′){
$jms-display(‘close-service.php’);
exit;
}
if(isset($page)) $jms-page=$page;
if($q=$_SERVER[‘QUERY_STRING’]){
$para=array_merge($para, explode(‘/’, $q));
}
if($para==null) $para=array();
$jms-headers=getallheaders();
if(isset($jms-headers[‘x-call’])){
// 函數調用
header(‘content-Type: application/json’);
try{
ob_start();
echo json_encode($reflection-invokeArgs($jms, $_POST));
ob_flush();
}catch(Exception $e){
$jms-error($e-getMessage(), true);
}
}elseif(isset($jms-headers[‘x-form-call’])){
// 表單調用
$accept=strpos($jms-headers[‘Accept’], ‘application/json’)===0;
if($accept) header(‘content-Type: application/json’);
try{
ob_start();
if($accept){
echo json_encode($reflection-invokeArgs($jms, $_POST));
}else{
json_encode($reflection-invokeArgs($jms, $_POST));
}
ob_flush();
}catch(Exception $e){
$jms-error($e-getMessage(), true);
}
}elseif(strpos($jms-headers[‘Accept’], ‘application/json’)===0){
// AJAX調用
header(‘content-Type: application/json’);
try{
//echo json_encode($reflection-invokeArgs($jms, $para));
echo json_encode(call_user_func_array(array($jms, $action), $para));
}catch(Exception $e){
$jms-error($e-getmessage());
}
}else{
// 普通請求
header(‘content-Type: text/html;charset=utf-8’);
//$reflection-invokeArgs($jms, $para);
call_user_func_array(array($jms, $action), $para);
}
$jms=null;
function notfound($message){
header(‘content-Type: text/plain; charset=utf8’);
header(‘HTTP/1.1 404 Not Found’);
die($message);
}
wampserver安裝多php 版本切換出錯
一個就行了安裝那麼多幹嘛 肯定要端口衝突的,全部卸載重新安裝一個就成。
幾種centos下php安裝報錯原因分析與解決
解決方案
[root@rh-linux software]# rpm -qa |grep libxml2
libxml2-2.6.26-2.1.12
libxml2-python-2.6.26-2.1.12
重新安裝libxml2和libxml2-devel包, yum安裝的時候發現新版本會提示更新,需要更新的可以更新,不要跳過就行了。
# yum install libxml2
# yum install libxml2-devel -y
安裝完之後查找xml2-config文件是否存在
# find / -name “xml2-config”
/usr/bin/xml2-config
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/248600.html