我想用特定文本打开用户的邮件客户端。文本的某些部分应该是粗体、斜体或 u\xcc\xb2n\xcc\xb2d\xcc\xb2e\xcc\xb2r\xcc\xb2l\xcc\xb2i\xcc\xb2n\xcc\xb2e\xcc\xb2d\xcc \xb2.
\n\n我尝试使用mailto
但它使用RFC 2368 ...所以这是根本不可能的:
\n\n\n\n\n特殊的 hname“body”表示关联的 hvalue 是消息的正文。“body”hname 应包含消息的第一个文本/纯正文部分的内容。mailto URL 主要用于生成短文本消息,这些消息实际上是自动处理的内容(例如邮件列表的“订阅”消息),而不是一般的 MIME 正文。
\n
有没有其他方法可以继续打开具有特定格式模板的邮件客户端?
\n我正在使用 laravel5.6并Dusk运行一些测试。
我总是像这样截取我的截图
...
use Facebook\WebDriver\WebDriverDimension;
...
class LoginTest extends DuskTestCase
{
public function testLogin()
{
$user = User::first();
$this->browse(function ($browser) use ( $user ) {
$test = $browser->visit( new Login)
->resize(1920,1080)
...
->driver->takeScreenshot(base_path('tests/Browser/screenshots/testLogin.png'));
});
}
}
Run Code Online (Sandbox Code Playgroud)
但是随着我的测试使用的越来越多,我不想每次都继续写->resize(X,Y)和base_path('bla/blab/bla').
我想为将要编写的每个测试定义大小和路径。
我想我应该定义一些函数,tests/DesukTestCase.php但我什至不知道如何检索驱动程序等等。
你有关于这方面的一些指导或文档吗?因为我找不到任何东西......
我正在使用DCMTK(3.6.0)库来获取(0020,0013)标签的值,该标签是图像编号,也就是系列的切片编号.
我在批处理脚本中使用以下内容
for /f "tokens=2 delims=[]" %%a in ('@echo. ^|c:\Libs\dcmtk-3.6.0\bin\dcmdump +P "0020,0013" %%i') do (set img_no=%%a)
Run Code Online (Sandbox Code Playgroud)
它通常很顺利,但有时这个值总是设置为整个系列的'0'.
我试图用这个命令转储它
C:\Libs\dcmtk-3.6.0\bin>dcmdump +P "0020,0013" PathToInvalideDICOM\img.dcm
(0020,0013) IS [0] # 2, 1 InstanceNumber
(0020,0013) IS [4] # 2, 1 InstanceNumber
(0020,0013) IS [0] # 2, 1 InstanceNumber
C:\Libs\dcmtk-3.6.0\bin>dcmdump +P "0020,0013" PathToCorrectDICOM\img.dcm
(0020,0013) IS [0] # 2, 1 InstanceNumber
(0020,0013) IS [5] # 2, 1 InstanceNumber
Run Code Online (Sandbox Code Playgroud)
我们可以看到,有时得到的值(不是'0')是最后一个.在这种情况下,一切都很好.但在某些特定情况下,正确的值存储在两个"0"之间.
我也试过一个不同的翻斗车(DCM4CHE 2.0.23),它给了我相同的结果.
我想知道为什么会这样.更重要的是,如何获得正确的价值?
在批处理文件中,有没有办法消除0直到正确的数字?
默认情况下,上面引用的命令行采用最后一个字段......我想.
我想自动导出.odf文件到.pdf.
我尝试了一种叫做unoconv的东西.
在Windows命令提示符下键入时,一切都是正确的.
>"C:\Program Files (x86)\OpenOffice 4\program\python.exe" "C:\Program Files (x86)\OpenOffice 4\program\unoconv-master\unoconv" -f pdf path/to/myfile.odt
Run Code Online (Sandbox Code Playgroud)
一旦在PHP脚本中使用,就不再有用了.没有错误出现.
exec('"C:\Program Files (x86)\OpenOffice 4\program\python.exe" "C:\Program Files (x86)\OpenOffice 4\program\unoconv-master\unoconv" -f pdf path/to/myfile.odt');
//or
shell_exec('"C:\Program Files (x86)\OpenOffice 4\program\python.exe" "C:\Program Files (x86)\OpenOffice 4\program\unoconv-master\unoconv" -f pdf path/to/myfile.odt')
Run Code Online (Sandbox Code Playgroud)
我也试图逃避\或使用'和"不同,但我的测试没有一个是决定性的.
$test = exec($cmd, $output, $return);
echo var_dump($test);
echo var_dump($output);
echo var_dump($return);
Run Code Online (Sandbox Code Playgroud)
给我吗
//echo var_dump($test)give nothing
//echo var_dump($ouput);
array (size=0)
empty
//echo var_dump($return);
int 1
Run Code Online (Sandbox Code Playgroud)
这听起来像权限问题,但我也检查了这一点,所有文件夹都可以访问PHP.
我正在使用 Laravel 5.6。我有一个users表firstname和lastname字段。
在我的User模型中,我也有这个功能
public function name()
{
return $this->firstname . ' ' . $this->lastname;
}
Run Code Online (Sandbox Code Playgroud)
现在在另一个控制器中,我想为所有用户创建一个下拉菜单。但我想显示name()而不仅仅是名字/姓氏。
我目前正在使用这个
$users = \App\User::pluck('lastname', 'id');
return view('myview', compact('MY_collection' , 'users'));
Run Code Online (Sandbox Code Playgroud)
在我看来(使用集体/html)
{!! Form::select('user', $users, isset($user) ? $MY_collection->user: null, ['class' => 'form-control']) !!}
Run Code Online (Sandbox Code Playgroud)
是否可以将 pluck 与方法功能一起使用?还是我应该做点别的?
我也知道访问器解决方案,但我name在数据库中没有属性,所以它不起作用。
我想知道何时使用这种代码编写验证失败(我正在使用laravel 5.4)
$this->validate($request, [
'name' => 'required|min:2|max:255'
]);
Run Code Online (Sandbox Code Playgroud)
我知道我可以使用:
$validator = Validator::make($request->all(), [
'name' => 'required|min:2|max:255'
]);
if ($validator->fails()) { //Not okay }
Run Code Online (Sandbox Code Playgroud)
但是我想保持这种验证方式,$this->validate而不是使用Validator模型。
所以...可以使用类似的东西:
//This is not working btw
$test = $this->validate($request, [
'name' => 'required|min:2|max:255'
]);
if( $test )
{ //Ok }
else
{ //Not okay };
Run Code Online (Sandbox Code Playgroud) 我的问题是我必须只检索一批图像的某些标签。但这个过程需要太长的时间。
我在用着dcmdump -M -L +P '0010,0020' +P '0010,0010
-M不要加载很长的值(例如像素数据)-L打印缩短的长标签值(默认)+P打印标签的文本转储,该选项可以指定多次但单个文件的“转储”需要~1sc. 这是因为所有标签仍在加载,但随后+P 正在搜索所有标签。
我只有几个标签要检索。是否有可能仅加载某些特定标签以减少转储文件所需的时间?
也许 DCMTK 不是合适的工具。我对一切都持开放态度。
我正在使用 laravel5.6并Dusk进行此特定测试。
我正在尝试在我的 dropzone 中声明文件上传。但是我的 Dropzone 是以我没有file输入元素的方式创建的。所以我不能使用该attach()方法。
所以我尝试了以下
$file = new \Symfony\Component\HttpFoundation\File\UploadedFile(base_path() . '/tests/samples/Cylinder.stl', 'Cylinder.stl');
$response = $this->actingAs( $this->user )
->from( 'my-url' )
->post( route('attachments.store' ) , [
'file' => $file
]);
Run Code Online (Sandbox Code Playgroud)
但是错误包包含这个错误
"errors" => Illuminate\Support\ViewErrorBag {#1194
#bags: array:1 [
"default" => Illuminate\Support\MessageBag {#1189
#messages: array:1 [
"file" => array:1 [
0 => "The file failed to upload."
]
]
#format: ":message"
}
]
}
Run Code Online (Sandbox Code Playgroud)
当然,当我手动执行时,这是有效的。
我想根据第二个字段的值重新组合我的结果.
我有下表:
SELECT case_id, current FROM progress
+---------+---------+
| case_id | current |
+---------+---------+
| 158 | 1 |
| 158 | 1 |
| 165 | 0 |
| 165 | 0 |
| 166 | 0 |
| 166 | 1 |
| 166 | 0 |
+---------+---------+
Run Code Online (Sandbox Code Playgroud)
并且想像这样重新组合case_id:
+---------+---------+
| case_id | current |
+---------+---------+
| 158 | 1 |
| 165 | 0 |
| 166 | 1 |
+---------+---------+
Run Code Online (Sandbox Code Playgroud)
因此,如果只有'1',它将是'1'.如果只有'0',我们得到'0'.但是如果我们有2个值但至少有一个'1'那么它将是'1'.
我已经尝试过使用group但是它没有像我预期的那样工作.
我不知道最优化的方法是什么.
我有一Task堂课。并且该表的每条记录可以有一个或多个子项,并且可以是另一个任务的一个或多个父项。
表任务
id | name
Run Code Online (Sandbox Code Playgroud)
表tasks_links
parent_id | child_id
Run Code Online (Sandbox Code Playgroud)
任务模型
<?php
namespace App;
class Task extends Model
{
public function childs()
{
return $this->belongsToMany(Task::class, 'tasks_links', 'parent_id','child_id');
}
public function parents()
{
return $this->belongsToMany(Task::class, 'tasks_links' , 'child_id' , 'parent_id');
}
}
Run Code Online (Sandbox Code Playgroud)
在我的控制器和视图中,我可以使用这样的关系
Task::find($id)->parents(); //Return an array
Run Code Online (Sandbox Code Playgroud)
当我删除一个任务时,我也会删除与其他相关任务的链接
所以以下工作:
\DB::table('tasks_links')->where('parent_id' , $task->id)->delete();
\DB::table('tasks_links')->where('child_id' , $task->id)->delete();
Run Code Online (Sandbox Code Playgroud)
但我以下不起作用
foreach ($task->parents() as $parent) {
$parent->delete();
}
Run Code Online (Sandbox Code Playgroud)
有没有办法links通过使用parents和childs函数而不是直接在数据库中搜索来删除?
是否有可能获得特定元素和特定类的元素?我想<textarea>在test课堂上展示所有内容.
我知道如何获得所有textarea
$("textarea");
document.getElementsByTagName("textarea");
Run Code Online (Sandbox Code Playgroud)
或者给定类的所有元素
$(".test");
document.getElementsByClassName("test");
Run Code Online (Sandbox Code Playgroud)
我不知道如何在同一时间获得两者
I upgraded laravel to V5.6.7 where sftp driver is included.
I have set my config in config/filesystems.php
'sftp' => [
'driver' => 'sftp',
'host' => 'myhost.com',
'username' => 'user',
'password' => 'password',
],
Run Code Online (Sandbox Code Playgroud)
And when I do
dd( Storage::disk('sftp')->files('/') );
This throw
Class 'League\Flysystem\Sftp\SftpAdapter' not found
实际上,该类在我的供应商文件夹中不存在。
但是我composer.json就是这样
{
"require": {
....
"laravel/framework": "~5.6.7",
....
},
Run Code Online (Sandbox Code Playgroud)
并composer update告诉我,一切都更新。
我应该怎么做才能上这堂课?
PS:当我转储另一个磁盘时,它运行良好
laravel ×6
php ×5
dcmtk ×2
dicom ×2
laravel-dusk ×2
batch-file ×1
cmd ×1
composer-php ×1
dcm4che ×1
dump ×1
href ×1
html ×1
javascript ×1
jquery ×1
mailto ×1
mysql ×1
permissions ×1
testing ×1
unoconv ×1
validation ×1