小编Ste*_*oke的帖子

访问DOCUMENT_ROOT之外的PHP类文件

我对基于PHP网络的应用程序结构的"最佳实践"的构成感到困惑.阅读本网站有很多建议.经常提到的一个结构是"文档根目录中没有任何php文件".虽然这听起来像是一种很好的做法,但我看不出它是如何工作的 - Web服务器无法识别文档根目录之外的任何内容.我假设文档根目录是公共访问目录,如下所示:

app-
  |
  - htdocs - document root
  | |
  | - index.php
  | - css/
  | - images/
  |
  - PHP classes in here/
  - Other PHP classes in here.../
Run Code Online (Sandbox Code Playgroud)

或者上面示例中的"app"是文档根目录,而htdocs目录是站点结构的公共可访问区域吗?

接下来,我如何确保除了htdocs之外的目录中的文件没有公共访问权限?

php apache structure

5
推荐指数
2
解决办法
916
查看次数

为什么CSS内容图像不显示?

考虑这个HTML:

<div class="logo-b"></div>
Run Code Online (Sandbox Code Playgroud)

而这个CSS:

div.logo-b {
    content: url(http://placehold.it/350x150);
    height: 150px;
    border: 1px solid darkred;
}
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用CSS显示图像。没有显示图像。请参阅此jsfiddle以了解我的意思。我想念什么?

编辑:看起来Chrome像我提供的那样渲染小提琴,但Firefox(我使用的)却没有。如果在CSS的类名中添加:before:after,则图像将显示在Firefox中。有人可以阐明为什么会这样吗?

编辑:我使用错误的构造将图像放置在我的页面上。在我正在做的事情的背景下,我应该使用<img>html标签。CSS content构造使用:before和/或after放置内容(包括图像),但是我了解这些用于特定上下文。我只想显示一个徽标。

html css

5
推荐指数
1
解决办法
1488
查看次数

我可以在开关盒中使用strpos吗?

考虑:

我有一个变量叫$field那不时可有(其中包括)值,如action,idanother_term.我想使用一个switch结构来筛选值:

switch ($field) {
    case 'action':
        // do something
        break;
    case 'id':
        // do something
        break;
    case (strpos($field, '_term')):
        // do something else
        break;
}
Run Code Online (Sandbox Code Playgroud)

前两个案例有效.第三个没有.我认为这是对switch语句的错误使用.这是否更好地作为if/else序列处理?

php switch-statement

5
推荐指数
1
解决办法
6097
查看次数

标签 统计

php ×2

apache ×1

css ×1

html ×1

structure ×1

switch-statement ×1