php - 如何根据动态值移动二进制字符串 - PHP
问题描述
我有一个 0 和 1 形式的 336 二进制字符串。我从一个变量中得到一个值。假设字符串是 010101010001111,变量值为 3,那么我想要一个这样的字符串:111010101010001。
是否可以?如何在 PHP 中完成?
任何帮助将不胜感激。
解决方案
你可以这样试试
$num = "010101010001111";
$shiftCount = 3;
$valueToReplace = 1;
echo substr(str_pad($num, strlen($num)+$shiftCount,$valueToReplace,STR_PAD_LEFT),0,-$shiftCount);
str_pad — 用另一个字符串填充一个字符串到一定长度
substr — 返回字符串的一部分
strlen — 获取字符串长度
pad_type
可选参数 pad_type 可以是STR_PAD_RIGHT、STR_PAD_LEFT或 STR_PAD_BOTH。如果未指定 pad_type,则假定为 STR_PAD_RIGHT。
推荐阅读
- python - 如何在同一个标签中同时使用字符串和 StringVar?
- c++ - 序列化地图以获得额外的空元素
- javascript - 使用 Testcafe-Reporter-HTML 会阻止测试运行
- java - 无法获取 BottomNavigationView 的 id
- python - Python中的沙漏
- javascript - 错误 [prerender-spa-plugin] - 无法预渲染所有路由
- python - 在品脱中继承 Q_ - 为什么超级调用不带参数?
- django - 使用 django-storages 进行 S3 版本控制
- mysql - 使用 CASE 更新 VIRTUAL GENERATED 列
- listview - 将复选框添加到 TableView 列