多版本php安裝報錯記錄的簡單介紹

本文目錄一覽:

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

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 13:28
下一篇 2024-12-12 13:29

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • Git secbit:一種新型的安全Git版本

    Git secbit是一種新型的安全Git版本,它在保持Git原有功能的同時,針對Git存在的安全漏洞做出了很大的改進。下面我們將從多個方面對Git secbit做詳細地闡述。 一…

    編程 2025-04-29
  • Python簡單數學計算

    本文將從多個方面介紹Python的簡單數學計算,包括基礎運算符、函數、庫以及實際應用場景。 一、基礎運算符 Python提供了基礎的算術運算符,包括加(+)、減(-)、乘(*)、除…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • Python海龜代碼簡單畫圖

    本文將介紹如何使用Python的海龜庫進行簡單畫圖,並提供相關示例代碼。 一、基礎用法 使用Python的海龜庫,我們可以控制一個小海龜在窗口中移動,並利用它的“畫筆”在窗口中繪製…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • Python運行不報錯又無任何結果輸出可能產生的原因以及解決方法

    在Python編程過程中,有時候會出現程序運行不報錯但卻沒有任何結果輸出的情況。本文將從多個方面解析這個問題,並提供相應的解決方法。 一、語法錯誤 語法錯誤是Python程序中最常…

    編程 2025-04-29
  • Java 監控接口返回信息報錯信息怎麼處理

    本文將從多個方面對 Java 監控接口返回信息報錯信息的處理方法進行詳細的闡述,其中包括如何捕獲異常、如何使用日誌輸出錯誤信息、以及如何通過異常處理機制解決報錯問題等等。以下是詳細…

    編程 2025-04-29
  • Python切片索引越界是否會報錯

    解答:當對一個字符串、列表、元組進行切片時,如果索引越界會返回空序列,不會報錯。 一、切片索引的概念 切片是指對序列進行操作,從其中一段截取一個新序列。序列可以是字符串、列表、元組…

    編程 2025-04-29

發表回復

登錄後才能評論