我发现了php与/tmp文件夹有关的奇怪行为.Php在使用时使用另一个文件夹/tmp.PHP 5.6.7,nginx,php-fpm.
我以两种方式执行相同的脚本:通过浏览器和通过shell.但是当它通过浏览器启动时,文件不在真实/tmp文件夹中:
<?php
$name = date("His");
echo "File /tmp/$name.txt\n";
shell_exec('echo "123" > /tmp/'.$name.'.txt');
var_dump(file_exists('/tmp/'.$name.'.txt'));
var_dump(shell_exec('cat /etc/*release | tail -n 1'));
Run Code Online (Sandbox Code Playgroud)
php -f script.php
File /tmp/185617.txt
bool(true)
string(38) "CentOS Linux release 7.0.1406 (Core)
Run Code Online (Sandbox Code Playgroud)
文件在哪里?在/ tmp
$ find / -name 185617.txt
/tmp/185617.txt
Run Code Online (Sandbox Code Playgroud)
如果通过http://myserver.ru/script.php我获取它
File /tmp/185212.txt
bool(true)
string(38) "CentOS Linux release 7.0.1406 (Core)
Run Code Online (Sandbox Code Playgroud)
但文件在哪里?
$ find / -name 185212.txt
/tmp/systemd-private-nABCDE/tmp/185212.txt
Run Code Online (Sandbox Code Playgroud)
为什么php认为/tmp应该在/tmp/systemd-private-nABCDE/tmp?
我正在对Google Maps Distance Matrix API执行请求,以计算从一个点到另一个点的距离.这两点都在俄罗斯.问题是,在某些情况下,API会返回错误的目标.
它回来了
"destination_addresses" : [
"1 Chome-11 Kamifukubara, Yonago-shi, Tottori-ken 683-0004, Japan"
],...
Run Code Online (Sandbox Code Playgroud)
因此,谷歌地图知道它是俄罗斯,但距离矩阵认为它是日本.为什么?
海岸附近的地方是否有已知的虫子?
UPDATE
此问题已在问题跟踪器https://issuetracker.google.com/issues/35828610中处理.它于2016年7月19日被标记为固定.
有一个iPhone,需要捕获change隐藏输入事件.在PC上打开时,它可以工作,我看到了changed文字.如果我在iPhone上打开它,它不会按预期工作,我只是看到open dialog.
简单的jsfiddle演示了这一点.
<input type=file style="display:none" id=file>
<button type=button id=but>open</button>
<div id=out>
</div>
Run Code Online (Sandbox Code Playgroud)
和
$(document).ready(function(){
$('#but').on('click touchend', function(){
$('#out').text('open dialog');
$('#file').click();
});
$('#file').on('change', function(evt) {
$('#out').text('changed');
});
});
Run Code Online (Sandbox Code Playgroud)
它出什么问题了?这是iOs的新bug吗?Afaik,它仅在一个月前发挥作用.
我试图取代hidden有opacity:0,它可以用于简单的jsfiddle,但在复杂的项目,隐藏侧边栏不起作用.问题如下.如何进行简单的修复和最近发生的变化(一些Safari更新?),导致隐藏输入行为的变化?
我们目前正在开发一个网站,该网站允许用户播放连接到audiocontext的简单音频标签。我们知道IOS的技术问题,例如由用户手势启动的播放。一切正常,直到IOS12。既然IOS13已经发布,那么什么也无法工作了。
它适用于所有台式机,Android和IOS(最高IOS13)。
有什么想法吗?
使用连接到iPhone的Desktop上的Safari进行调试时,控制台中没有错误消息。
https://codepen.io/gchad/pen/WNNvzzd
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
<body>
<div>
<h1>Play Audio Tag connected to audio context</h1>
<div id="playbutton" style="width:100px; height:100px; background:blue; color:white; margin:auto; text-align: center; font-size: 30px; cursor: pointer;">
Play
</div>
<audio id="myPlayer" crossorigin="anonymous" >
<source src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/858/outfoxing.mp3"/>
<!--http://commondatastorage.googleapis.com/codeskulptor-assets/week7-brrring.m4a-->
</audio>
</div>
<script>
var player = document.getElementById('myPlayer'),
playbutton = document.getElementById('playbutton'),
playStatus = 'paused';
var audioContext = new(window.AudioContext || window.webkitAudioContext)();
var audioSource = audioContext.createMediaElementSource(player);
audioSource.connect(audioContext.destination);
playbutton.addEventListener('click',function(ev){
if( playStatus == 'paused'){
audioContext.resume();
player.play();
playbutton.innerHTML = "Pause";
playStatus = 'isPlaying'; …Run Code Online (Sandbox Code Playgroud) 我有一个包含条目的数据库。每个条目都有开始日期和状态字段。我想要做的是按开始日期对条目进行排序(已完成),但首先显示状态为 0 的条目,然后显示其他条目(也按开始日期排序)我也在对数据进行分页。现在按日期和分页排序很容易做到,但不知道如何做其他事情。
我正在尝试渲染一个 vue js 组件,它很简单 -
var infowindow_content = "<google-map-infowindow ";
infowindow_content += "content='Hello World'";
infowindow_content += "></google-map-infowindow>";
Run Code Online (Sandbox Code Playgroud)
通过将其传递到标记的信息窗口
this.current_infowindow = new google.maps.InfoWindow({
content: infowindow_content,
});
this.current_infowindow.open(context.mapObject, marker);
Run Code Online (Sandbox Code Playgroud)
而 vueJS 组件是 -
<template>
<div>
{{content}}
</div>
</template>
<script>
module.exports = {
name: 'google-map-infowindow',
props: [
'content',
],
}
</script>
Run Code Online (Sandbox Code Playgroud)
但是,这不起作用并且窗口是空白的。
为什么缩小文件等于未缩小文件?
const { mix } = require('laravel-mix');
mix.styles([
'public/some.css',
'public/thing.css',
], 'public/css/index.css');
mix.minify('public/css/index.css');
Run Code Online (Sandbox Code Playgroud)
运行时npm run production,大小为128kB(均压缩)
Asset Size Chunks Chunk Names
mix.js 511 bytes 0 [emitted] mix
/css/index.css 128 kB [emitted]
/css/index.min.css 128 kB [emitted]
Run Code Online (Sandbox Code Playgroud)
运行时npm run dev,两个文件的大小相同,并且大小相同160 kB,即,两个文件均未缩小。缩小版本怎么不取决于min后缀,而是取决于dev \ prod选项?
我有一个无法在我的Iphone上选择的输入字段.我可以点击输入,但它没有聚焦.要写的键盘出现,但当我写入内容时,没有任何反应.因此我无法填写输入字段.我的CSS中缺少什么?
<div class="container" v-if="user === null">
<div class="input">
<input type="text" v-model="username" placeholder="E-Mail">
</div>
<div class="input">
<input type="password" @keyup.enter="authenticate" v-model="password" placeholder="Passwort">
</div>
<div class="buttons">
<button @click="authenticate">Log In</button>
</div>
</div>
Run Code Online (Sandbox Code Playgroud) 我有一个关于更新Laravel中的表的问题.我有一个User和Car模型.示例如下,
user.php的
<?php
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable
{
use Notifiable;
protected $guarded = [];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'password', 'remember_token',
];
public function cars()
{
return $this->hasMany(Car::class);
}
}
Run Code Online (Sandbox Code Playgroud)
Car.php
<?php
namespace App;
class Car extends Model
{
public function user()
{
return $this->belongsTo(User::class);
}
}
Run Code Online (Sandbox Code Playgroud)
对于更新,我在控制器上使用以下代码,
public function update(Request $request, $id)
{ …Run Code Online (Sandbox Code Playgroud) 使用Doctrine ObjectManager的最佳方法是什么?我将它注入module.config.php的控制器
'Telecom\Controller\Users' => function($sm){
$ctr = new Telecom\Controller\UsersController();
$ctr->setEntityManager(
$sm->getServiceLocator()
->get('Doctrine\ORM\EntityManager')
);
return $ctr;
},
Run Code Online (Sandbox Code Playgroud)
然后我在我的控制器中使用它如下
$this->getEntityManager()->persist($entity);
$this->getEntityManager()->flush();
Run Code Online (Sandbox Code Playgroud)
但是Marco Pivetta(Doctrine团队,zf2撰稿人)教导"如果你在控制器中注入objectmanager,你将会有一个糟糕的架构" http://marco-pivetta.com/doctrine-orm-zf2-tutorial/#/39/11.
所以请帮助我,使用Entity Manager的最佳架构方式是什么.我应该使用像我自己的服务这样的另一层来处理实体经理吗?
我想我正在做一些无聊的事情。
我正在尝试将变量传递到电子邮件视图中。该变量是从数据库中读取的,并且可以通过管理页面进行配置。出于某种原因,我收到的电子邮件没有 HTML Paser(我看到其中类似的标签),我希望对它们进行解析,这样我的客户就可以在每次需要时手动更改它们。
如何实现?
我的代码是:
Mail::send('emails.contact', array(
'name' => $request->get('name'),
'email' => $request->get('email'),
'user_message' => $request->get('message'),
'email_content' => html_entity_decode($emailContent->Description)
), function($message) use ($result)
{
$message->from(env('MAIL_USERNAME'));
$message->to($result['From'], $result['Name']);
$message->subject('[Casa Bordeira] We received your message');
});
Run Code Online (Sandbox Code Playgroud)
视图中的一个:
<div class="contentEditableContainer contentTextEditable">
<div class="contentEditable" align='left' >
<p>
Hello <strong>{{$name}}</strong>.
<br/>
{{$email_content}}
<br/>
<br/>
<br/>
Here's a copy of your message:
<br/>
<br/>
{{$user_message}}
</p>
</div>
</div>
Run Code Online (Sandbox Code Playgroud) 自从一年前我遵循本教程以来,我决定在 stackoverflow 中发布问题和答案:https ://www.youtube.com/watch?v=pxyX_5mtlTk 。我试图从 Angular 中的谷歌位置自动完成中检索纬度和经度。我试图用谷歌搜索解决方案,在这里发布问题(没有人回答,所以我删除了我的问题),但我没有运气,最终我能够弄清楚,我决定在 YouTube 教程上发布我知道如何去做吧,从一年前开始,我收到了 35 封电子邮件询问我的解决方案,所以我决定也在这里分享。
php ×4
google-maps ×3
eloquent ×2
ios ×2
javascript ×2
laravel ×2
vue.js ×2
angular ×1
architecture ×1
centos7 ×1
css ×1
doctrine-orm ×1
email ×1
ios13 ×1
iphone ×1
jquery ×1
laravel-5 ×1
laravel-mix ×1
minify ×1
nginx ×1
nuxt.js ×1
tmp ×1
vuejs2 ×1