【发布时间】:2013-12-19 02:47:04
【问题描述】:
我想在php文件中包含一个已经制作好的类,这里我使用的是.htaccess。但是一旦放入 php 文件中,php 类就无法打开或加载到 php 文件中。我的网络中的以下目录结构。
htdocs/
mysite/
src/
App/
Login.php <-- class file php
public/
login.php <-- file php
这是登录类 (mysite/src/App/Login.php)
class Login {
private $username;
//etc...
}
这是登录文件 (mysite/public/login.php)
require('../src/App/Login.php');
$login = new Login();
这是 .htaccess 文件 (mysite/.htaccess)
Options +FollowSymLinks
RewriteEngine On
# skip for existing files/directories (/assets will be skipped here)
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
# for public directory
rewritecond %{REQUEST_URI} !^/public/(.*)
RewriteRule .* index.php [L]
和 index.php 用于 .htaccess 文件中的规则 (mysite/index.php)
$requested = empty($_SERVER['REQUEST_URI']) ? false : $_SERVER['REQUEST_URI'];
$server_name = str_replace(basename($_SERVER['SCRIPT_NAME']), "", $_SERVER['SCRIPT_NAME']);
switch ($requested) {
case $server_name:
include 'public/index.php';
break;
case $server_name.'login':
include 'public/login.php';
break;
default:
include 'public/404.php';
}
但是当我打开 localhost/mysite/login 时出现错误
警告:需要(../src/App/Login.php):无法打开流:没有这样 C:\xampp\htdocs\mysite\public\login.php 中的文件或目录 线...
致命错误:require(): 无法打开所需的 '../src/App/Login.php' (include_path='.;C:\xampp\php\PEAR') 在 C:\xampp\htdocs\mysite\public\login.php 上线...
你能帮帮我吗?
谢谢
【问题讨论】: