小编Ema*_*mad的帖子

如何在不降低网站的情况下更新网站?

我需要最佳做法来更新我的网站上的一个或多个文件,而不会让它失败;

例如,如果我更新Model.php文件,上传将花费几秒钟,比如在替换服务器上的文件之前的一两秒钟,同时,网站将显示一些错误,找不到model.php,或者不完整,即使我压制错误,网站最终也会死亡.

那是什么最好的做法?

php

10
推荐指数
1
解决办法
2510
查看次数

W3C验证器显示新错误:"元需要'名称'属性"

使用此代码,w3C验证器一切正常:

<meta property="og:site_name" content="--Sitename--" />
Run Code Online (Sandbox Code Playgroud)

如果我用property属性替换name,验证器说og:site_name没有注册.

今天突然间显示了这个错误:

错误第7行,第66列:元素meta缺少必需属性name.

什么都没有改变但是这个错误突然出现了.

任何人都知道为什么,以及解决方案?

meta w3c-validation rdfa open-graph-protocol

6
推荐指数
1
解决办法
2290
查看次数

Mysql变量无法通过php mysql查询工作

我有这个问题:

$query = " 

 SET @points := -1;
 SET @num := 0;

 SELECT `id`,`rank`,
 @num := if(@points = `rank`, @num, @num + 1) as `point_rank`
 FROM `said`
 ORDER BY `rank` *1 desc, `id` asc";
Run Code Online (Sandbox Code Playgroud)

我正在使用来自php的这个查询; 给我这个错误:

您的SQL语法有错误; 检查与MySQL服务器版本对应的手册,以便在'SET @num:= 0附近使用正确的语法;

如果我在phpmyadmin Sql查询面板中复制并粘贴该代码,它可以正常工作,但是从PHP代码行开始它不起作用,看起来设置Vars时会出现问题.

php mysql

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

Laravel 5.4 artisan 为 /public 中的现有文件夹提供 htaccess / 和 Routes::get

我仍在尝试使用 Laravel 5.4。然而正在运行

php artisan server 
Run Code Online (Sandbox Code Playgroud)

没有考虑 /public 中的 .htaccess 文件,无论我在那里编辑什么,它仍然没有处理它,工匠服务在 127.0.0.1:8000 运行

--- 我遇到了这个问题,因为我正在寻找另一件事,那就是:

我想为已经位于 /public 的 /images 文件夹设置一个 route::get,从 htaccess 条件中删除 -d 应该可以正常解决这个问题,从而使 apache 重定向请求甚至从文件夹到 index.php,

因此,在使用 php artisan serve 进行本地测试时,我注意到更改甚至清除 htaccess 文件都不会改变 Laravel 的行为。

感谢您的时间。

[注意] 如果我从 apache 运行 laravel,或者除了 php artisan serve 之外的任何东西,htaccess 都可以工作。所以我的问题只是关于 serve 命令及其行为。

php apache .htaccess laravel laravel-5.4

3
推荐指数
1
解决办法
2828
查看次数

PHP在实例化之前检查类父级

我要做的是在实例化之前检查一些类继承

class A{}
class B extends A{}
class C{}
Run Code Online (Sandbox Code Playgroud)

我想在继续之前检查B,C类的继承,如果它们继承A然后继续前进,否则我将不会实例化.

我不想要的:

// That's not what i want
$B = new B();
var_dump($B instance of A); // Valid => true
Run Code Online (Sandbox Code Playgroud)

我想要的是:

// That's what i want
var_dump(B instance of A); // Not valid 
Run Code Online (Sandbox Code Playgroud)

但我只是想知道这是否可行.

谢谢.

php oop inheritance parent-child

2
推荐指数
1
解决办法
163
查看次数

PHP 正则表达式将字符串解释为命令行属性/选项

假设我有一串

"Insert Post -title Some PostTitle -category 2 -date-posted 2013-02:02 10:10:10"
Run Code Online (Sandbox Code Playgroud)

我一直在尝试做的是将这个字符串转换为操作,该字符串非常可读,我想要实现的目标是使发布变得更容易,而不是每次都导航到新页面。现在我对这些操作的工作方式感到满意,但我已经多次尝试按照我想要的方式处理它,但失败了,我只是希望将属性(选项)之后的值放入数组中,或者简单地提取然后价值观将按照我想要的方式处理它们。

上面的字符串应该给我一个键=>值的数组,例如

$Processed = [
    'title'=> 'Some PostTitle',
    'category'=> '2',
    ....
];
Run Code Online (Sandbox Code Playgroud)

我正在寻找这样的处理数据。

我一直在尝试为此编写一个正则表达式,但没有希望。

例如这个:

 /\-(\w*)\=?(.+)?/
Run Code Online (Sandbox Code Playgroud)

这应该足够接近我想要的。

请注意标题和日期中的空格,某些值也可以有破折号,也许我可以添加允许的属性列表

$AllowedOptions = ['-title','-category',...];
Run Code Online (Sandbox Code Playgroud)

我只是不擅长这个,希望得到你的帮助!

赞赏!

php regex

2
推荐指数
1
解决办法
430
查看次数

异常时 auth() 方法为 null

我玩弄Laravel 5.4.23和我碰到这种情况时,我打了404页auth()auth()->check()auth()->user(),和那些不被初始化从而在视图中返回null,或任何接近这一点。

我什至去 AppServiceProvider.php 类做一些测试,

dd(auth()->check());
Run Code Online (Sandbox Code Playgroud)

boot方法中返回 Null ,即使我已登录,这对我来说也是 0。

这意味着,每当用户点击 404 页面时,导航栏等都不会呈现用户数据,例如,传统上我们在导航栏中的右上角有用户个人资料按钮,就像在 stackoverflow 上一样,在这种情况下,在 Laravel 中,这我所看到的是不可能的。

我是在正确的轨道上还是我错过了什么?

在我看来,Laravel 在完成我测试的请求后尝试让用户登录。

希望我在这里找到答案。

谢谢。

更新:

boot在 App\Providers\AppServiceProvider中的方法中包括手动登录尝试似乎解决了 aut() 命令中的空问题,但我相信这将尝试在每个页面请求中将用户登录两次,因为显然 Laravel 正在获取记录在用户启动后,异常请求,不知道还有什么。

php laravel laravel-5 laravel-authorization

2
推荐指数
1
解决办法
968
查看次数