小编onl*_*mas的帖子

如何链接到另一个页面上的<div>?

我希望某个特定链接转到另一个页面上的某个标题.我知道如何在当前页面上执行此操作.

html

20
推荐指数
2
解决办法
12万
查看次数

没有互联网的多个手机之间传输数据的好方法(现有)是什么?

背景

我有一个关于度假的应用程序的想法,需要与具有相同应用程序的其他手机通信.在度假期间,这些手机可能并非都有互联网,因为漫游可能非常昂贵.数据不是很多:像500 kB max就足够了(在json中).

每部手机都有一些其他手机想知道的信息,但是如果它有助于将信息存储在一部手机(从现在开始的主手机)上,并在以后通过互联网回家时与其他手机共享.

手机

Android,iPhone和Windows Phone我们不能假设他们有NFC,IR或zigbee.只是硬件几乎每个手机都有蓝牙,相机,麦克风等.

我的想法

  • 基于新信息更改的QR码:如果扫描第一部电话,则第二部电话的QR码包含来自第一部电话及其自身的数据,第三部电话具有来自第一部,第二部和第三部(自身)的数据,直到达到该主电话为止包含所有数据的手机.

  • 数据传输通过我们听不到的声音(或我们可以).Con是我不知道移动平台是否存在这样的东西,写它就像是一个3年的硕士论文项目.

  • 蓝牙.我们可以连接8个设备吗?它的工作是否一致(连接我的耳机都很麻烦,8个手机试图同时连接怎么样)

所有这些想法都有很大的缺点.也许我忽视了一个更好的方式.

我将为最佳解决方案的问题添加一个赏金用一点代码参考解释它的答案(链接没问题)总是好于:"使用蓝牙人"

android bluetooth transmission ios windows-phone

13
推荐指数
1
解决办法
5151
查看次数

在Laravel生产中完全禁用错误报告?

我想完全禁止生产错误报告,因为我们有一些非常旧的代码,我们仍然需要修复,但现在确实有效(是的我也不喜欢它).我们无法在几天内修复所有内容,因此我们需要像往常一样压制警告和异常.

真正的问题是它已经在一个简单的懒惰的bug上引发异常(因为没有定义var)

if(!$var) {
     // do whatever
}
Run Code Online (Sandbox Code Playgroud)

试着

APP_DEBUG = FALSE

APP_LOG_LEVEL =紧急

display_errors(false);
set_error_handler(null);
set_exception_handler(null);
Run Code Online (Sandbox Code Playgroud)

但它仍然显示出一个 ErrorException

未定义的变量:script_name_vars_def

编辑:代码的工作原理如下

web.php

Route::any('/someroute', 'somecontroller@controllerFunc');
Run Code Online (Sandbox Code Playgroud)

somecontroller.php

public controllerFunc() {
    ob_start();
    require '/old_index.php';
    $html = ob_get_clean();

    return response($html);
}
Run Code Online (Sandbox Code Playgroud)

这样我们就可以使用Laravel路由,而无需立即重写旧代码.

我知道我可以很容易地修复这个警告,但是这些错误还有很多,我们现在需要使用Laravel路由.稍后解决问题.

思路

编辑解释中间件无法正常工作的步骤

1)创建midddleware

php artisan make:middleware SuppressExceptions
Run Code Online (Sandbox Code Playgroud)

2)写下来

SuppressExceptions.php

public function handle($request, Closure $next)
{
    error_reporting(0);
    return $next($request);
}
Run Code Online (Sandbox Code Playgroud)

3)注册

laravel /应用/ HTTP/Kernel.php

protected $middlewareGroups = [
   'web' => [
       \App\Http\Middleware\SuppressExceptions::class,
],
Run Code Online (Sandbox Code Playgroud)

php laravel laravel-5 laravel-5.3 laravel-5.4

13
推荐指数
3
解决办法
2万
查看次数

XDebug不会破坏atom的php-debug包中的断点

我的问题是我找到了许多其他答案,但没有一个对我有用.代码和"服务器"都是localhost.编辑:尝试使用端口9001,而不是在一些答案中建议+如果Visual Studio代码工作尝试,但奇怪的是:它打破了VS代码中的异常,但仍然没有在断点上.连接似乎有效:

在此输入图像描述

我的设置

软件

  • Windows 10 Pro x64
  • MAMP(非专业)运行端口81
  • 原子
  • php-debug包
  • xdebug-2.4.1-7.0-vc14.dll扩展名
  • 要调试的代码是在Laravel框架内编写的

CONFIGS

PHP信息xdebug部分

(完整)

     xdebug

      xdebug support    enabled
    Version 2.4.1
    IDE Key XDEBUG_ECLIPSE
    XDEBUG NOT LOADED AS ZEND EXTENSION
    Supported protocols Revision
    DBGp - Common DeBuGger Protocol $Revision: 1.145 $
    Directive   Local Value Master Value
    xdebug.auto_trace   Off Off
    xdebug.cli_color    0   0
    xdebug.collect_assignments  Off Off
    xdebug.collect_includes On  On
    xdebug.collect_params   0   0
    xdebug.collect_return   Off Off
    xdebug.collect_vars Off Off
    xdebug.coverage_enable  On  On
    xdebug.default_enable   On  On
    xdebug.dump.COOKIE  no …
Run Code Online (Sandbox Code Playgroud)

php breakpoints xdebug laravel atom-editor

9
推荐指数
1
解决办法
1394
查看次数

在Laravel 5.5中测试授权策略时遇到问题

我在测试授权策略时遇到了问题,它显示了一个冒险的测试,我不知道如何解决这个问题.这是一个新安装的laravel 5.5

PHPUnit 6.5.13 by Sebastian Bergmann and contributors.

R.                                                                  2 / 2 (100%)

Time: 99 ms, Memory: 16.00MB

There was 1 risky test:

1) Tests\Feature\ExampleTest::testBasicTest
Test code or tested code did not (only) close its own output buffers

OK, but incomplete, skipped, or risky tests!
Tests: 2, Assertions: 2, Risky: 1.
Run Code Online (Sandbox Code Playgroud)

这是我的测试代码:

public function testBasicTest()
{
    $this->get('/home')
        ->assertStatus(403);
}
Run Code Online (Sandbox Code Playgroud)

当我使用时dd($this->get('/home')->getContent());,我收到类似这样的错误..

file_get_contents([internal]): failed to open stream: No such file or directory
in Frame.php line 122
Run Code Online (Sandbox Code Playgroud)

这是我的家庭控制器

<?php

namespace …
Run Code Online (Sandbox Code Playgroud)

php phpunit laravel

8
推荐指数
1
解决办法
628
查看次数

是否会缓存分组的Laravel路由?它们在哪里缓存?

文档中所述

基于封闭的路由无法缓存。要使用路由缓存,必须将任何Closure路由转换为控制器类。

但是,如果我想对路由进行分组,则可以使路由本身指向控制器(函数),但分组仍然是 Closure

Route::group(array('prefix' => 'admin', 'before' => 'auth'), function() // Closure
{
    Route::get('/', 'Examplecontroller@bla'); // non Closure
});
Run Code Online (Sandbox Code Playgroud)

也许出于研究目的:将路由存储在哪里?

php caching laravel laravel-5.4

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

嵌套事务在 Laravel 中如何工作?

我有一个主函数A,在函数B之前和函数C之后调用。两者都保存一个模型,并且在函数A中都有自己的开始事务和主事务,数据如何存储?

我试图在函数 C 上抛出异常,但函数 B 在任何地方存储变量 $modelB

        public function B(){
            DB::beginTransaction();
            try{
            $modelB->save();
                DB::commit();
            }catch(\Exception $e){
                DB::rollback();
            }
        }

        public function C(){
            DB::beginTransaction();
            try{
            $modelC->save();
                DB::commit();
            }catch(\Exception $e){
                DB::rollback();
            }
        }

        public function A(){
            DB::beginTransaction();
            try{
                $this->B();
                $this->C();
                DB::commit();
            } catch(\Exception $e){
                DB::rollback();
            }
        }
Run Code Online (Sandbox Code Playgroud)

php mysql transactions laravel

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

有没有一种简单的方法可以知道什么行的jQuery脚本称为事件?

我正在研究一个drupal模块(无关紧要),我想重新创建一个javascript/jQuery事件.如果我使用chrome并转到事件监听器,我看到第57行调用了jQuery脚本,但这并没有真正帮助:

  • 该脚本缩小并且不可读
  • 我想知道使用脚本调用事件的jQuery的哪一行(什么选择器和它的函数是什么),而不是jQuery脚本本身
  • 通过搜索合适的选择器来查找文件并不容易,因为有60个已加载的javascripts文件,这要归功于drupal及其安装的模块.

原因是我想重新创建这个(可能是ajax)调用: 在此输入图像描述

那么有人知道像Chrome插件或其他东西的伎俩吗?它可以为我节省很多时间.

javascript jquery jquery-selectors

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

如何强制 PHP 的 json_encode 整数值编码为字符串?

我正在使用 PHP v5.6。

当我读到 php json_encode 函数会自动将 int 转换为 string 时。但就我而言并非如此。Json_encode 仍然将其返回为 int 而不是 string。

比如例子:

json_encode(['code' => 200, 'results' => [id=> 1]]);
Run Code Online (Sandbox Code Playgroud)

我的预期结果是全部变成字符串。但我得到的是

{"code":200,"results":{"id": 1}}
Run Code Online (Sandbox Code Playgroud)

预期输出:

{"code":"200","results":{"id": "1"}}
Run Code Online (Sandbox Code Playgroud)

如何将所有结果更改为字符串而不对每个值使用“”?

注意:结果数组基于查询。

php json

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

为什么Eloquent(在Laravel中)将我的varchar uuid主键转换为整数,从而导致错误?

跟进我昨晚的问题之后,我睡了一个好觉,并“发现”这是由于自动转换/类型转换或其他原因导致的。

总结:

  • 模型用uuid作主键
  • 他们通过trigger从MySQL插入获得它们
  • 要获取由数据库运行时生成的uuid,我调用 $model_object->fresh(); fresh()
  • 当整体获取对象时有效,但仅选择属性时无效

模型

<?php namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Address extends Model {

    protected $table = 'Addresses';
    protected $fillable = ['uuid', 'zipCode', 'houseNumber'];
    protected $primaryKey = 'uuid';
    //public $incrementing = false;
}
Run Code Online (Sandbox Code Playgroud)

控制器(拧紧的地方)

public function store(Request $request) {
    $input = $request->all();
    $address = Address::create($input);
    var_dump($address); exit;
Run Code Online (Sandbox Code Playgroud)

//结果(按预期)

    $address = $address->fresh();
    var_dump($address); exit;
Run Code Online (Sandbox Code Playgroud)

//结果(按预期)

var_dump($address->uuid); exit;//result (wow): int(0)
}
Run Code Online (Sandbox Code Playgroud)

php uuid type-conversion eloquent laravel-5

5
推荐指数
3
解决办法
1395
查看次数