naonaox1126/vizualizer

PHP可视化框架

安装: 175

依赖: 0

建议者: 0

安全: 0

星标: 2

关注者: 2

分支: 0

开放问题: 0

类型:框架

v1.9.10 2016-04-28 06:21 UTC

README

Vizualizer是一个PHP框架,旨在让WEB设计师能够简单地添加功能。在模板方面,我们使用Smarty,但我们的目标是让非程序员也能够通过像乐高积木一样添加功能来实现在PHP中执行处理。

基本用法

首先,准备一个系统安装的目录,并使其可写。(需要WEB服务器的进程可写)由于大多数目录由框架本身自动创建,因此无需特别注意。

目录准备就绪后,接下来安装框架本体。可以使用composer进行安装,因此创建以下composer.json。

必需的只有vizualizer和smarty包,其他包根据需要的功能进行选择安装。

这次为了获取包括开发中在内的最新版,指定了dev-develop版本,但在运行时请使用适当的版本号。

{
    "require": {
        "naonaox1126/vizualizer": "dev-develop",
        "naonaox1126/vizualizer_admin": "dev-develop",
        "naonaox1126/vizualizer_address": "dev-develop",
        "naonaox1126/vizualizer_member": "dev-develop",
        "naonaox1126/vizualizer_shop": "dev-develop",
        "smarty/smarty": ">=3.1.0"
     }, 
    "require-dev": {
        "naonaox1126/vizualizer": "dev-develop",
        "naonaox1126/vizualizer_admin": "dev-develop",
        "naonaox1126/vizualizer_address": "dev-develop",
        "naonaox1126/vizualizer_member": "dev-develop",
        "naonaox1126/vizualizer_shop": "dev-develop",
        "smarty/smarty": "dev-trunk"
    }
}

准备好以上内容后,使用composer进行安装,详情请查看composer网站。

安装成功后,应该会创建一个名为vendor的目录。

接下来,设置调用源index.php和.htaccess。

index.php的内容如下。仅调用Packagist的autoload.php并执行Vizualizer::startup()。然后,框架会自动初始化,因此无需执行任何操作。

<?php
require __DIR__ . "/vendor/autoload.php";

Vizualizer::startup();

接下来是.htaccess的内容。正如其名所示,它是基于Apache的,但它所做的只是将不存在的文件访问重写为index.php。同样,如果使用nginx也可以以同样的方式工作。

# Rewriteの有効化
RewriteEngine on

# htmlの場合はindex.phpを呼び出す。
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php [L]

将这两者放置在系统根目录后,接下来创建设置文件。在系统根目录下创建_configure目录并放置文件。设置文件可以按照以下规则创建。以下是以test.hoge.com域名为例的设置说明。

  • configure.php 默认设置文件。如果没有符合条件的设置,则应用此设置。
  • configure_hoge.com.php 顶级域名用设置文件。如果没有子域名特定的设置,则应用此设置。主要用途是用于在子域名中扩展系统。
  • configure_test.hoge.com.php 使用子域名用设置文件。如果存在此文件,则优先使用。

设置文件的内容可以像普通的PHP文件一样创建。如果每个设置都有要使用的PHP代码,也可以在这里编写。设置描述方法如下,Vizualizer_Configure::set("键", "值");依次列出。

可用的键包括以下内容。(仅为例)

  • timezone 设置系统的时区。(默认:Asia/Tokyo)
  • locale 设置系统的语言区域。(默认:ja_JP.UTF-8)
  • debug 执行调试设置。(默认:true)设置为true时,将输出调试日志,并将PHP的日志输出为E_STRICT以外的所有内容。
  • display_error 设置日志的显示状态。(默认:On)设置为On时,将PHP日志显示在屏幕上。
  • site_code 设置网站本身的识别代码。(默认:default)由于在日志等文件中使用,因此请设置易于识别的名称。
  • site_name 设置网站本身的名称。(默认:默认网站)
  • site_domain 设置网站的域名。(默认:$_SERVER[SERVER_NAME])
  • database 设置数据库连接。(默认:无设置)定义方法如下 "default" => array( "read" => array( "dbtype" => "mysql", "host" => "连接主机", "user" => "连接用户", "password" => "连接密码", "database" => "admin_tools", "query" => "" ), "write" => array( "dbtype" => "mysql", "host" => "连接主机", "user" => "连接用户", "password" => "连接密码", "database" => "admin_tools", "query" => "" ) ) 如果没有特别限制,则第一个键设置为default。如果使用插件包并且需要为该插件包准备另一个数据库,则指定包名。另外,read和write是读取查询时使用read、写入查询时使用write的连接设置。query不需要特别设置,但如果在编码时出现错误,则设置SET NAMES会更好。

设置文件创建完成后,接下来是设置模板。在templates目录中创建模板并放置其中。在templates中包含default、sphone、mobile、android、iphone等子目录。每个子目录分别用于PC、智能手机/平板电脑、功能手机、Android设备、iOS设备。此外,如果没有创建,则Android设备用和iOS设备用将分别使用智能手机/平板电脑用、智能手机/平板电脑用将分别使用功能手机用作为替代。因此,如果不需要进行端到端切换,则仅创建default即可。

模板目录创建完成后,接下来是配置模板。配置方法是将HTML文件简单地放置在假定模板路径为系统根目录的模板路径中。

如果不使用与数据库等相关的功能,则可以通过这种方式进行确认。在将Web设计师传递给程序员时,可以通过这里的基本页面切换进行确认,这样程序员就可以简单地添加各个页面的功能。

模板方面使用Smarty,因此如果了解Smarty,也可以进行模块化。在这种情况下,将模块标签嵌入到模块化的部分中,也可以在所有使用该模块的页面上应用处理。

模块的用法

在显示每个页面时,通过meta标签设置要在其中执行的处理。在meta标签的name中指定loadmodule,在content中指定要调用的模块的名称。模块可以包括后面提到的模块以外的,按照HTML中编写的顺序执行。必要的附加参数因模块而异,但常用的有以下几种。(但请注意,是否一定具有指定效果取决于模块)

  • error 通过指定错误页面的模板,在模块中发生异常时,可以切换到错误页面。
  • sort_key 指定用于排序的请求参数的键名。
  • key_prefix 设置要共同设置的键的前缀。在仅针对特定键进行操作的情况下使用。
  • continue 在完成注册处理等后需要重新加载的模块等情况下,通过设置此参数,可以不重新加载而执行下一个处理。
  • wkey 在手动进行搜索结果等键限制的情况下指定。与wvalue一起设置。
  • wvalue 在手动进行搜索结果等键限制的情况下指定。wkey对应的条件值。

另外,如果以相同的名称和相同的参数多次调用模块,则只有第一次调用的模块有效。例如,在输入错误检查中,如果对相同的键多次调用相同的模块,则第二次的模块将被跳过,因此不会重复显示相同的错误消息。

除了模块以外的meta标签设置。

可以通过meta标签设置的内容(loadmodule以外的)以及在content中设置来执行功能的有以下几种。

  • redirect 在处理到达标签位置时,将页面重定向。
  • shift 在处理到达标签位置时,调用另一个模板。